1.1 --- a/imiptools/filesys.py Tue Oct 27 23:53:51 2015 +0100
1.2 +++ b/imiptools/filesys.py Wed Oct 28 00:12:48 2015 +0100
1.3 @@ -85,7 +85,7 @@
1.4 old_lock_name = "__unlock__"
1.5
1.6 def __init__(self, store_dir):
1.7 - self.store_dir = store_dir
1.8 + self.store_dir = abspath(store_dir)
1.9 if not exists(self.store_dir):
1.10 makedirs(self.store_dir)
1.11 fix_permissions(self.store_dir, True)
1.12 @@ -119,7 +119,7 @@
1.13 for part in parts:
1.14 filename = self.get_file_object(expected, part)
1.15 if not filename:
1.16 - return False
1.17 + return None
1.18 parent = expected
1.19 expected = filename
1.20
1.21 @@ -157,9 +157,13 @@
1.22
1.23 parts = parts and list(parts) or []
1.24 parts.append(self.lock_name)
1.25 - mkdir(self.get_object_in_store(*parts))
1.26 + d = self.get_object_in_store(*parts)
1.27 + if not d: raise OSError(errno.ENOENT, "Could not get lock in store: %r in %r" % (parts, self.store_dir))
1.28 + mkdir(d)
1.29 parts.append(str(getpid()))
1.30 - mkdir(self.get_object_in_store(*parts))
1.31 + d = self.get_object_in_store(*parts)
1.32 + if not d: raise OSError(errno.ENOENT, "Could not get lock in store: %r in %r" % (parts, self.store_dir))
1.33 + mkdir(d)
1.34
1.35 def remove_lock_dir(self, *parts):
1.36