From 705a0d81c867ffa1d2d17f81aa7a60abe680574b Mon Sep 17 00:00:00 2001 From: Janne Blomqvist Date: Tue, 16 Nov 2010 21:36:25 +0200 Subject: [PATCH] Backwards compatibility for python 2.4 Python 2.4 doesn't allow try...except...finally clauses, see PEP 341. Also, yield statements inside try...finally is not allowed. The commit changes the logic to no longer use those syntactical features. --- offlineimap/accounts.py | 22 +++++++++++++--------- 1 file changed, 13 insertions(+), 9 deletions(-) diff --git a/offlineimap/accounts.py b/offlineimap/accounts.py index 597533289..c062716d1 100644 --- a/offlineimap/accounts.py +++ b/offlineimap/accounts.py @@ -84,8 +84,10 @@ def queuedfolders(self): self.folderlock.release() yield (folder, quick) self.folderlock.acquire() - finally: + except: self.folderlock.release() + raise + self.folderlock.release() def getaccountlist(customconfig): return customconfig.getsectionlist('Account') @@ -183,10 +185,11 @@ def syncrunner(self, siglistener): #might need changes here to ensure that one account sync does not crash others... if not self.refreshperiod: try: - self.sync(siglistener) - except: - self.ui.warn("Error occured attempting to sync account " + self.name \ - + ": " + str(sys.exc_info()[1])) + try: + self.sync(siglistener) + except: + self.ui.warn("Error occured attempting to sync account " + self.name \ + + ": " + str(sys.exc_info()[1])) finally: self.ui.acctdone(self.name) @@ -196,10 +199,11 @@ def syncrunner(self, siglistener): looping = 1 while looping: try: - self.sync(siglistener) - except: - self.ui.warn("Error occured attempting to sync account " + self.name \ - + ": " + str(sys.exc_info()[1])) + try: + self.sync(siglistener) + except: + self.ui.warn("Error occured attempting to sync account " + self.name \ + + ": " + str(sys.exc_info()[1])) finally: looping = self.sleeper(siglistener) != 2 self.ui.acctdone(self.name)