Fix localrepo.copy to deal with symbolic links.
--- a/mercurial/localrepo.py Wed Mar 21 23:20:56 2007 -0400
+++ b/mercurial/localrepo.py Wed Mar 21 23:20:56 2007 -0400
@@ -1072,10 +1072,11 @@
def copy(self, source, dest, wlock=None):
p = self.wjoin(dest)
- if not os.path.exists(p):
+ if not (os.path.exists(p) or os.path.islink(p)):
self.ui.warn(_("%s does not exist!\n") % dest)
- elif not os.path.isfile(p):
- self.ui.warn(_("copy failed: %s is not a file\n") % dest)
+ elif not (os.path.isfile(p) or os.path.islink(p)):
+ self.ui.warn(_("copy failed: %s is not a file or a "
+ "symbolic link\n") % dest)
else:
if not wlock:
wlock = self.wlock()