From 253ff4a9c236e35587978e40531021c0f824756b Mon Sep 17 00:00:00 2001 From: Kali Kaneko Date: Tue, 26 Nov 2013 16:46:58 -0200 Subject: Fix fetch iteration on empty folder --- changes/bug_fix-iteration-empty-mailbox | 1 + src/leap/mail/imap/server.py | 5 ++++- 2 files changed, 5 insertions(+), 1 deletion(-) create mode 100644 changes/bug_fix-iteration-empty-mailbox diff --git a/changes/bug_fix-iteration-empty-mailbox b/changes/bug_fix-iteration-empty-mailbox new file mode 100644 index 0000000..11dd770 --- /dev/null +++ b/changes/bug_fix-iteration-empty-mailbox @@ -0,0 +1 @@ + o Allow to iterate in an empty mailbox during fetch. Closes: #4603 diff --git a/src/leap/mail/imap/server.py b/src/leap/mail/imap/server.py index bb2830d..abe1dfa 100644 --- a/src/leap/mail/imap/server.py +++ b/src/leap/mail/imap/server.py @@ -1512,7 +1512,10 @@ class SoledadMailbox(WithMsgFields): except TypeError: # looks like we cannot iterate last = self.messages.get_last() - uid_last = last.getUID() + if last is None: + uid_last = 1 + else: + uid_last = last.getUID() messages.last = uid_last # for sequence numbers (uid = 0) -- cgit v1.2.3 From 5f08775a4aace0859d4ad2539b07ad612fec4b7b Mon Sep 17 00:00:00 2001 From: Kali Kaneko Date: Tue, 26 Nov 2013 16:50:10 -0200 Subject: fix adding msg with empty flags --- changes/bug_fix-empty-flags | 1 + src/leap/mail/imap/server.py | 6 ++++-- 2 files changed, 5 insertions(+), 2 deletions(-) create mode 100644 changes/bug_fix-empty-flags diff --git a/changes/bug_fix-empty-flags b/changes/bug_fix-empty-flags new file mode 100644 index 0000000..a109ef5 --- /dev/null +++ b/changes/bug_fix-empty-flags @@ -0,0 +1 @@ + o Fix a bug when adding a message with empty flags. Closes: #4496 diff --git a/src/leap/mail/imap/server.py b/src/leap/mail/imap/server.py index abe1dfa..733944c 100644 --- a/src/leap/mail/imap/server.py +++ b/src/leap/mail/imap/server.py @@ -1438,12 +1438,14 @@ class SoledadMailbox(WithMsgFields): """ # XXX we should treat the message as an IMessage from here uid_next = self.getUIDNext() - flags = tuple(str(flag) for flag in flags) + if flags is None: + flags = tuple() + else: + flags = tuple(str(flag) for flag in flags) self.messages.add_msg(message, flags=flags, date=date, uid=uid_next) - # XXX recent should not include deleted...?? exists = len(self.messages) recent = len(self.messages.get_recent()) for listener in self.listeners: -- cgit v1.2.3