diff options
-rwxr-xr-x | program/include/iniset.php | 2 | ||||
-rw-r--r-- | program/include/rcube_imap.php | 2 | ||||
-rw-r--r-- | program/include/rcube_imap_generic.php | 6 |
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 |