/brz/remove-bazaar

To get this branch, use:
bzr branch http://gegoxaren.bato24.eu/bzr/brz/remove-bazaar

« back to all changes in this revision

Viewing changes to bzrlib/transform.py

  • Committer: Robert Collins
  • Date: 2010-05-11 08:44:59 UTC
  • mfrom: (5221 +trunk)
  • mto: This revision was merged to the branch mainline in revision 5223.
  • Revision ID: robertc@robertcollins.net-20100511084459-pb0uinna9zs3wu59
Merge trunk - resolve conflicts.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1657
1657
                      or trans_id in self._new_parent):
1658
1658
                    try:
1659
1659
                        mover.rename(full_path, self._limbo_name(trans_id))
1660
 
                    except errors.TransformRenameFailed, e:
 
1660
                    except OSError, e:
1661
1661
                        if e.errno != errno.ENOENT:
1662
1662
                            raise
1663
1663
                    else:
1688
1688
                if trans_id in self._needs_rename:
1689
1689
                    try:
1690
1690
                        mover.rename(self._limbo_name(trans_id), full_path)
1691
 
                    except errors.TransformRenameFailed, e:
 
1691
                    except OSError, e:
1692
1692
                        # We may be renaming a dangling inventory id
1693
1693
                        if e.errno != errno.ENOENT:
1694
1694
                            raise
1792
1792
        parent_keys = [(file_id, self._file_revision(t, file_id)) for t in
1793
1793
                       self._iter_parent_trees()]
1794
1794
        vf.add_lines((file_id, tree_revision), parent_keys,
1795
 
                     self.get_file_lines(file_id))
 
1795
                     self.get_file(file_id).readlines())
1796
1796
        repo = self._get_repository()
1797
1797
        base_vf = repo.texts
1798
1798
        if base_vf not in vf.fallback_versionedfiles:
2460
2460
    if entry.kind == "directory":
2461
2461
        return True
2462
2462
    if entry.kind == "file":
2463
 
        f = file(target_path, 'rb')
2464
 
        try:
2465
 
            if tree.get_file_text(file_id) == f.read():
2466
 
                return True
2467
 
        finally:
2468
 
            f.close()
 
2463
        if tree.get_file(file_id).read() == file(target_path, 'rb').read():
 
2464
            return True
2469
2465
    elif entry.kind == "symlink":
2470
2466
        if tree.get_symlink_target(file_id) == os.readlink(target_path):
2471
2467
            return True
2930
2926
        """Rename a file from one path to another."""
2931
2927
        try:
2932
2928
            osutils.rename(from_, to)
2933
 
        except (IOError, OSError), e:
 
2929
        except OSError, e:
2934
2930
            if e.errno in (errno.EEXIST, errno.ENOTEMPTY):
2935
2931
                raise errors.FileExists(to, str(e))
2936
 
            # normal OSError doesn't include filenames so it's hard to see where
2937
 
            # the problem is, see https://bugs.launchpad.net/bzr/+bug/491763
2938
 
            raise errors.TransformRenameFailed(from_, to, str(e), e.errno)
 
2932
            raise
2939
2933
        self.past_renames.append((from_, to))
2940
2934
 
2941
2935
    def pre_delete(self, from_, to):
2951
2945
    def rollback(self):
2952
2946
        """Reverse all renames that have been performed"""
2953
2947
        for from_, to in reversed(self.past_renames):
2954
 
            try:
2955
 
                osutils.rename(to, from_)
2956
 
            except (OSError, IOError), e:
2957
 
                raise errors.TransformRenameFailed(to, from_, str(e), e.errno)                
 
2948
            osutils.rename(to, from_)
2958
2949
        # after rollback, don't reuse _FileMover
2959
2950
        past_renames = None
2960
2951
        pending_deletions = None