From f11a49f263ff9648302a57ec8915d03ff659046d Mon Sep 17 00:00:00 2001 From: Adam Spiers Date: Mon, 15 May 2006 03:51:12 +0100 Subject: [PATCH] make savemessage_searchforheader more robust --- offlineimap/folder/IMAP.py | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/offlineimap/folder/IMAP.py b/offlineimap/folder/IMAP.py index d288255..45978b5 100644 --- a/offlineimap/folder/IMAP.py +++ b/offlineimap/folder/IMAP.py @@ -159,11 +159,14 @@ class IMAPFolder(BaseFolder): headervalue = imapobj._quote(headervalue) try: matchinguids = imapobj.uid('search', 'HEADER', headername, headervalue)[1][0] - except imapobj.error: + except imapobj.error, err: # IMAP server doesn't implement search or had a problem. - return 0 + raise ValueError, "Got IMAP error while attempting to find UID for message with header %s: %s" % (headername, err) ui.debug('imap', 'savemessage_searchforheader got initial matchinguids: ' + repr(matchinguids)) - + + if matchinguids == '': + raise ValueError, "Search for UID for message with header %s yielded no results" % headername + matchinguids = matchinguids.split(' ') ui.debug('imap', 'savemessage_searchforheader: matchinguids now ' + \ repr(matchinguids))