--- bzrlib/transform.py 2009-08-30 13:28:41.000000000 +0300 +++ bzrlib/transform.py 2009-08-30 13:33:18.000000000 +0300 @@ -16,6 +16,7 @@ import os import errno +import shutil from stat import S_ISREG, S_IEXEC from bzrlib.lazy_import import lazy_import @@ -1079,7 +1080,8 @@ if trans_id not in self._new_contents: continue new_path = self._limbo_name(trans_id) - os.rename(old_path, new_path) + #os.rename(old_path, new_path) + shutil.move(old_path,new_path) def create_file(self, contents, trans_id, mode_id=None): """Schedule creation of a new file. @@ -2718,7 +2720,8 @@ def rename(self, from_, to): """Rename a file from one path to another. Functions like os.rename""" try: - os.rename(from_, to) + #os.rename(from_, to) + shutil.move(from_,to) except OSError, e: if e.errno in (errno.EEXIST, errno.ENOTEMPTY): raise errors.FileExists(to, str(e)) @@ -2738,7 +2741,8 @@ def rollback(self): """Reverse all renames that have been performed""" for from_, to in reversed(self.past_renames): - os.rename(to, from_) + #os.rename(to, from_) + shutil.move(from_,to) # after rollback, don't reuse _FileMover past_renames = None pending_deletions = None