summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xprogram/include/iniset.php2
-rw-r--r--program/include/rcube_imap.php2
-rw-r--r--program/include/rcube_imap_generic.php6
3 files changed, 7 insertions, 3 deletions
diff --git a/program/include/iniset.php b/program/include/iniset.php
index c1eca54a7..5ef067f65 100755
--- a/program/include/iniset.php
+++ b/program/include/iniset.php
@@ -91,6 +91,7 @@ function rcube_autoload($classname)
'/MDB2_(.+)/',
'/Mail_(.+)/',
'/Net_(.+)/',
+ '/Auth_(.+)/',
'/^html_.+/',
'/^utf8$/',
),
@@ -98,6 +99,7 @@ function rcube_autoload($classname)
'MDB2/\\1',
'Mail/\\1',
'Net/\\1',
+ 'Auth/\\1',
'html',
'utf8.class',
),
diff --git a/program/include/rcube_imap.php b/program/include/rcube_imap.php
index 4c021802c..3fa24939c 100644
--- a/program/include/rcube_imap.php
+++ b/program/include/rcube_imap.php
@@ -3236,7 +3236,7 @@ class rcube_imap
if (is_array($this->namespace['shared'])) {
foreach ($this->namespace['shared'] as $ns) {
foreach ((array)$ns as $root) {
- if (strpos($mbox_name, $root[0]) === 0) {
+ if ($root[0] && strpos($mbox_name, $root[0]) === 0) {
return $mbox_name;
}
}
diff --git a/program/include/rcube_imap_generic.php b/program/include/rcube_imap_generic.php
index 2cffd00f4..16c9d4a64 100644
--- a/program/include/rcube_imap_generic.php
+++ b/program/include/rcube_imap_generic.php
@@ -1574,8 +1574,10 @@ class rcube_imap_generic
// Clear internal status cache
unset($this->data['STATUS:'.$mailbox]);
- $result = $this->execute($messages ? 'UID EXPUNGE' : 'EXPUNGE',
- array($messages), self::COMMAND_NORESPONSE);
+ if ($messages)
+ $result = $this->execute('UID EXPUNGE', array($messages), self::COMMAND_NORESPONSE);
+ else
+ $result = $this->execute('EXPUNGE', null, self::COMMAND_NORESPONSE);
if ($result == self::ERROR_OK) {
$this->selected = ''; // state has changed, need to reselect