[Pkg-bazaar-commits] ./bzr/unstable r656: - create branch lock files if they don't exist

Martin Pool mbp at sourcefrog.net
Fri Apr 10 08:20:36 UTC 2009


------------------------------------------------------------
revno: 656
committer: Martin Pool <mbp at sourcefrog.net>
timestamp: Fri 2005-06-10 17:32:36 +1000
message:
  - create branch lock files if they don't exist
modified:
  bzrlib/lock.py
-------------- next part --------------
=== modified file 'bzrlib/lock.py'
--- a/bzrlib/lock.py	2005-06-01 06:09:59 +0000
+++ b/bzrlib/lock.py	2005-06-10 07:32:36 +0000
@@ -35,22 +35,35 @@
 """
 
 
-import sys, os
+import sys
+import os
 
-from trace import mutter, note, warning
-from errors import LockError
+from bzrlib.trace import mutter, note, warning
+from bzrlib.errors import LockError
 
 class _base_Lock(object):
     def _open(self, filename, filemode):
-        self.f = open(filename, filemode)
-        return self.f
-    
+        import errno
+        try:
+            self.f = open(filename, filemode)
+            return self.f
+        except IOError, e:
+            if e.errno != errno.ENOENT:
+                raise
+
+            # maybe this is an old branch (before may 2005)
+            mutter("trying to create missing branch lock %r" % filename)
+            
+            self.f = open(filename, 'wb')
+            return self.f
+
 
     def __del__(self):
         if self.f:
             from warnings import warn
             warn("lock on %r not released" % self.f)
             self.unlock()
+            
 
     def unlock(self):
         raise NotImplementedError()



More information about the Pkg-bazaar-commits mailing list