peer: remove cancopy from peer api; use directly on repo instead
authorSune Foldager <cryo@cyanite.org>
Fri, 13 Jul 2012 21:52:37 +0200
changeset 17194 32a6a33b9a35
parent 17193 1d710fe5ee0e
child 17195 48c232873a54
peer: remove cancopy from peer api; use directly on repo instead
mercurial/hg.py
mercurial/localrepo.py
mercurial/peer.py
--- a/mercurial/hg.py	Fri Jul 13 21:52:28 2012 +0200
+++ b/mercurial/hg.py	Fri Jul 13 21:52:37 2012 +0200
@@ -302,7 +302,8 @@
             dircleanup = DirCleanup(dest)
 
         copy = False
-        if srcpeer.cancopy() and islocal(dest) and not srcrepo.revs("secret()"):
+        if (srcrepo and srcrepo.cancopy() and islocal(dest)
+            and not srcrepo.revs("secret()")):
             copy = not pull and not rev
 
         if copy:
--- a/mercurial/localrepo.py	Fri Jul 13 21:52:28 2012 +0200
+++ b/mercurial/localrepo.py	Fri Jul 13 21:52:37 2012 +0200
@@ -46,9 +46,6 @@
     def local(self):
         return self._repo
 
-    def cancopy(self):
-        return self._repo.cancopy() # so bundlerepo can override
-
     def canpush(self):
         return True
 
--- a/mercurial/peer.py	Fri Jul 13 21:52:28 2012 +0200
+++ b/mercurial/peer.py	Fri Jul 13 21:52:37 2012 +0200
@@ -42,9 +42,6 @@
     def peer(self):
         return self
 
-    def cancopy(self):
-        return False
-
     def canpush(self):
         return True