=== modified file 'bzrlib/workingtree.py' --- bzrlib/workingtree.py 2006-07-03 18:27:35 +0000 +++ bzrlib/workingtree.py 2006-07-13 21:56:16 +0000 @@ -288,7 +288,12 @@ if hc.needs_write: mutter("write hc") - hc.write() + try: + hc.write() + except (OSError, IOError), e: + if e.errno not in (errno.EPERM, errno.EACCES): + raise + note('could not update hash-cache EPERM') if _inventory is None: self._set_inventory(self.read_working_inventory()) @@ -1377,7 +1382,12 @@ # shared lock files (self._control_files is self.branch.control_files and self._control_files._lock_count==3)): - self._hashcache.write() + try: + self._hashcache.write() + except (OSError, IOError), e: + if e.errno not in (errno.EPERM, errno.EACCES): + raise + note('could not update hash-cache EPERM') # reverse order of locking. try: return self._control_files.unlock()