diff mercurial/localrepo.py @ 23116:2dc6b7917cdf stable

clone: fix copying bookmarks in uncompressed clones (issue4430) ef62c66bee1b broke bookmarks getting copied during uncompressed clones. Since most of the pull logic has been moved into exchange.py, lets just call exchange.pull to fix up the repo with the latest bits after the streaming clone has bootstrapped the repo. This keeps us from having to duplicate the bookmark logic.
author Durham Goode <durham@fb.com>
date Fri, 31 Oct 2014 12:56:25 -0700
parents 90f86ad3d4ff
children 8b4a8a9176e2
line wrap: on
line diff
--- a/mercurial/localrepo.py	Fri Oct 31 10:41:36 2014 -0700
+++ b/mercurial/localrepo.py	Fri Oct 31 12:56:25 2014 -0700
@@ -1724,14 +1724,15 @@
         if stream and not heads:
             # 'stream' means remote revlog format is revlogv1 only
             if remote.capable('stream'):
-                return self.stream_in(remote, set(('revlogv1',)))
-            # otherwise, 'streamreqs' contains the remote revlog format
-            streamreqs = remote.capable('streamreqs')
-            if streamreqs:
-                streamreqs = set(streamreqs.split(','))
-                # if we support it, stream in and adjust our requirements
-                if not streamreqs - self.supportedformats:
-                    return self.stream_in(remote, streamreqs)
+                self.stream_in(remote, set(('revlogv1',)))
+            else:
+                # otherwise, 'streamreqs' contains the remote revlog format
+                streamreqs = remote.capable('streamreqs')
+                if streamreqs:
+                    streamreqs = set(streamreqs.split(','))
+                    # if we support it, stream in and adjust our requirements
+                    if not streamreqs - self.supportedformats:
+                        self.stream_in(remote, streamreqs)
 
         quiet = self.ui.backupconfig('ui', 'quietbookmarkmove')
         try: