From 316a5f9d2688f8017de9190ab0f93a33deb3efcd Mon Sep 17 00:00:00 2001 From: alec Date: Fri, 4 Jun 2010 10:06:10 +0000 Subject: - performance improvement: we can skip THREAD when folder is empty git-svn-id: https://svn.roundcube.net/trunk@3713 208e9e7b-5314-0410-a742-e7e81cd9613c --- roundcubemail/program/include/rcube_imap_generic.php | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/roundcubemail/program/include/rcube_imap_generic.php b/roundcubemail/program/include/rcube_imap_generic.php index ab37902ae..411e1d396 100644 --- a/roundcubemail/program/include/rcube_imap_generic.php +++ b/roundcubemail/program/include/rcube_imap_generic.php @@ -1552,8 +1552,15 @@ class rcube_imap_generic function thread($folder, $algorithm='REFERENCES', $criteria='', $encoding='US-ASCII') { + $old_sel = $this->selected; + if (!$this->select($folder)) { - return false; + return false; + } + + // return empty result when folder is empty and we're just after SELECT + if ($old_sel != $folder && !$this->exists) { + return array(array(), array(), array()); } $encoding = $encoding ? trim($encoding) : 'US-ASCII'; -- cgit v1.2.3