commit: eb5deeea82a55b5446d42722666d0e0d124f9a2d Author: Brian Dolbec <dolsen <AT> gentoo <DOT> org> AuthorDate: Tue Jan 22 08:34:41 2013 +0000 Commit: Brian Dolbec <brian.dolbec <AT> gmail <DOT> com> CommitDate: Tue Sep 2 06:31:58 2014 +0000 URL: http://sources.gentoo.org/gitweb/?p=proj/catalyst.git;a=commit;h=eb5deeea
FIXME! Comment out a small code block causing TypeError. This was also short circuiting another large code block. FIXME!!!! This whole class seems overly complicated with TOO MANY nested try:excepts: --- catalyst/lock.py | 23 +++++++++++++++++------ 1 file changed, 17 insertions(+), 6 deletions(-) diff --git a/catalyst/lock.py b/catalyst/lock.py index 78968cb..c90f5b8 100644 --- a/catalyst/lock.py +++ b/catalyst/lock.py @@ -27,11 +27,17 @@ class LockDir: locking_method=fcntl.flock lock_dirs_in_use=[] die_on_failed_lock=True + def __del__(self): + #print "Lock.__del__() 1" self.clean_my_hardlocks() + #print "Lock.__del__() 2" self.delete_lock_from_path_list() + #print "Lock.__del__() 3" if self.islocked(): + #print "Lock.__del__() 4" self.fcntl_unlock() + #print "Lock.__del__() finnished" def __init__(self,lockdir): self.locked=False @@ -179,7 +185,9 @@ class LockDir: unlinkfile = 1 if not os.path.exists(self.lockfile): print "lockfile does not exist '%s'" % self.lockfile + #print "fcntl_unlock() , self.myfd:", self.myfd, type(self.myfd) if (self.myfd != None): + #print "fcntl_unlock() trying to close it " try: os.close(self.myfd) self.myfd=None @@ -193,11 +201,13 @@ class LockDir: unlinkfile = 1 self.locking_method(self.myfd,fcntl.LOCK_UN) except SystemExit, e: - raise + raise e except Exception, e: - os.close(self.myfd) - self.myfd=None - raise IOError, "Failed to unlock file '%s'\n" % self.lockfile + #if self.myfd is not None: + #print "fcntl_unlock() trying to close", self.myfd + #os.close(self.myfd) + #self.myfd=None + #raise IOError, "Failed to unlock file '%s'\n%s" % (self.lockfile, str(e)) try: # This sleep call was added to allow other processes that are # waiting for a lock to be able to grab it before it is deleted. @@ -224,7 +234,7 @@ class LockDir: # if "DEBUG" in self.settings: # print "Unlinked lockfile..." except SystemExit, e: - raise + raise e except Exception, e: # We really don't care... Someone else has the lock. # So it is their problem now. @@ -236,7 +246,7 @@ class LockDir: # open fd closed automatically on them. #if type(lockfilename) == types.StringType: # os.close(myfd) - + #print "fcntl_unlock() trying a last ditch close", self.myfd if (self.myfd != None): os.close(self.myfd) self.myfd=None @@ -421,6 +431,7 @@ class LockDir: pass return results + if __name__ == "__main__": def lock_work():