Mercurial > public > mercurial-scm > hg-stable
comparison mercurial/context.py @ 14429:c4c5e3802e9c
workingctx.remove: don't stat files again after unlinking
we already know at this point that they have been unlinked
author | Adrian Buehlmann <adrian@cadifra.com> |
---|---|
date | Tue, 24 May 2011 14:52:23 +0200 |
parents | 137b03b5aea1 |
children | cc8c09855d19 |
comparison
equal
deleted
inserted
replaced
14428:f0c43c63f742 | 14429:c4c5e3802e9c |
---|---|
860 util.unlinkpath(self._repo.wjoin(f)) | 860 util.unlinkpath(self._repo.wjoin(f)) |
861 except OSError, inst: | 861 except OSError, inst: |
862 if inst.errno != errno.ENOENT: | 862 if inst.errno != errno.ENOENT: |
863 raise | 863 raise |
864 for f in list: | 864 for f in list: |
865 if unlink and os.path.lexists(self._repo.wjoin(f)): | 865 if self._repo.dirstate[f] == 'a': |
866 self._repo.ui.warn(_("%s still exists!\n") % f) | |
867 elif self._repo.dirstate[f] == 'a': | |
868 self._repo.dirstate.forget(f) | 866 self._repo.dirstate.forget(f) |
869 elif f not in self._repo.dirstate: | 867 elif f not in self._repo.dirstate: |
870 self._repo.ui.warn(_("%s not tracked!\n") % f) | 868 self._repo.ui.warn(_("%s not tracked!\n") % f) |
871 else: | 869 else: |
872 self._repo.dirstate.remove(f) | 870 self._repo.dirstate.remove(f) |