From 04ae3c8dad2c57c00a94b2bf33776758ff1a51d0 Mon Sep 17 00:00:00 2001 From: Nicolas Sebrecht Date: Tue, 22 Nov 2016 00:58:14 +0100 Subject: [PATCH] folder: IMAP: display error message before starting next try Fetching messages is tried more than once. Display the error message at correct time. Signed-off-by: Nicolas Sebrecht --- offlineimap/folder/IMAP.py | 9 ++++++--- offlineimap/imapserver.py | 1 - 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/offlineimap/folder/IMAP.py b/offlineimap/folder/IMAP.py index 0c4573e..f8fcf7b 100644 --- a/offlineimap/folder/IMAP.py +++ b/offlineimap/folder/IMAP.py @@ -736,12 +736,15 @@ class IMAPFolder(BaseFolder): severity = OfflineImapError.ERROR.MESSAGE raise OfflineImapError(message, OfflineImapError.ERROR.MESSAGE) + self.ui.error("%s. While fetching msg %r in folder %r." + " Query: %s Retrying (%d/%d)"% ( + e, uids, self.name, query, + retry_num - fails_left, retry_num + ) + ) # Release dropped connection, and get a new one. self.imapserver.releaseconnection(imapobj, True) imapobj = self.imapserver.acquireconnection() - self.ui.error("%s. While fetching msg %r in folder %r." - " Retrying (%d/%d)"% - (e, uids, self.name, retry_num - fails_left, retry_num)) finally: # The imapobj here might be different than the one created before # the ``try`` clause. So please avoid transforming this to a nice diff --git a/offlineimap/imapserver.py b/offlineimap/imapserver.py index 483da54..65433d8 100644 --- a/offlineimap/imapserver.py +++ b/offlineimap/imapserver.py @@ -477,7 +477,6 @@ class IMAPServer(object): # Try to find one that previously belonged to this thread # as an optimization. Start from the back since that's where # they're popped on. - imapobj = None for i in range(len(self.availableconnections) - 1, -1, -1): tryobj = self.availableconnections[i] if self.lastowner[tryobj] == curThread.ident: