Use absolute paths in addremove.
This is more consistent with other places in the code, which only use
the "relpath" returned by cmdutil.walk for display purposes.
--- a/mercurial/cmdutil.py Thu Jun 07 23:16:10 2007 +0200
+++ b/mercurial/cmdutil.py Fri Jun 08 23:49:12 2007 -0300
@@ -186,13 +186,15 @@
add, remove = [], []
mapping = {}
for src, abs, rel, exact in walk(repo, pats, opts):
+ target = repo.wjoin(abs)
if src == 'f' and repo.dirstate.state(abs) == '?':
add.append(abs)
mapping[abs] = rel, exact
if repo.ui.verbose or not exact:
repo.ui.status(_('adding %s\n') % ((pats and rel) or abs))
- islink = os.path.islink(rel)
- if repo.dirstate.state(abs) != 'r' and not islink and not os.path.exists(rel):
+ islink = os.path.islink(target)
+ if (repo.dirstate.state(abs) != 'r' and not islink
+ and not os.path.exists(target)):
remove.append(abs)
mapping[abs] = rel, exact
if repo.ui.verbose or not exact: