diff --git a/offlineimap/imapserver.py b/offlineimap/imapserver.py index ef05cb7..75203e0 100644 --- a/offlineimap/imapserver.py +++ b/offlineimap/imapserver.py @@ -297,10 +297,9 @@ class IMAPServer: self.delim = imaputil.dequote(self.delim) self.root = imaputil.dequote(self.root) - self.connectionlock.acquire() - self.assignedconnections.append(imapobj) - self.lastowner[imapobj] = curThread.ident - self.connectionlock.release() + with self.connectionlock: + self.assignedconnections.append(imapobj) + self.lastowner[imapobj] = curThread.ident return imapobj except Exception as e: """If we are here then we did not succeed in getting a @@ -308,9 +307,6 @@ class IMAPServer: error...""" self.semaphore.release() - if(self.connectionlock.locked()): - self.connectionlock.release() - severity = OfflineImapError.ERROR.REPO if type(e) == gaierror: #DNS related errors. Abort Repo sync