Fix localrepo.copy to deal with symbolic links.
authorEric St-Jean <esj@wwd.ca>
Wed, 21 Mar 2007 23:20:56 -0400
changeset 4273 4a1504264261
parent 4272 ad33eeeeb50a
child 4274 af4f0d52f948
Fix localrepo.copy to deal with symbolic links.
mercurial/localrepo.py
--- 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()