Merge branch 'master' into next

This commit is contained in:
Nicolas Sebrecht 2011-01-20 20:12:02 +01:00
commit a9c63078a2
2 changed files with 19 additions and 10 deletions

View File

@ -147,13 +147,15 @@ The user discussion, development and all exciting stuff take place in the
`mailing list`_. You're *NOT* supposed to subscribe to send emails. `mailing list`_. You're *NOT* supposed to subscribe to send emails.
Reporting bugs Reporting bugs and contributions
============== ================================
Bugs Bugs
---- ----
Bugs and issues should be reported to the `mailing list`_. Bugs, issues and contributions should be reported to the `mailing list`_.
**Please, don't use the github features (messages, pull requests, etc) at all.
It would most likely be discarded or ignored.**
======== ========

View File

@ -87,9 +87,13 @@ class IMAPFolder(BaseFolder):
# Primes untagged_responses # Primes untagged_responses
imapobj.select(self.getfullname(), readonly = 1, force = 1) imapobj.select(self.getfullname(), readonly = 1, force = 1)
try: try:
# Some mail servers do not return an EXISTS response if # 1. Some mail servers do not return an EXISTS response
# the folder is empty. # if the folder is empty. 2. ZIMBRA servers can return
maxmsgid = long(imapobj.untagged_responses['EXISTS'][0]) # multiple EXISTS replies in the form 500, 1000, 1500,
# 1623 so check for potentially multiple replies.
maxmsgid = 0
for msgid in imapobj.untagged_responses['EXISTS']:
maxmsgid = max(long(msgid), maxmsgid)
except KeyError: except KeyError:
return True return True
@ -169,10 +173,13 @@ class IMAPFolder(BaseFolder):
return return
else: else:
try: try:
# Some mail servers do not return an EXISTS response if # 1. Some mail servers do not return an EXISTS response
# the folder is empty. # if the folder is empty. 2. ZIMBRA servers can return
# multiple EXISTS replies in the form 500, 1000, 1500,
maxmsgid = long(imapobj.untagged_responses['EXISTS'][0]) # 1623 so check for potentially multiple replies.
maxmsgid = 0
for msgid in imapobj.untagged_responses['EXISTS']:
maxmsgid = max(long(msgid), maxmsgid)
messagesToFetch = '1:%d' % maxmsgid; messagesToFetch = '1:%d' % maxmsgid;
except KeyError: except KeyError:
return return