diff mercurial/metadata.py @ 46618:dde86beca388

copies: tests and fix parallel computation of changed file information The code was mixing variable name and misbehaving in some case. This changeset fix it and also add a tests to validate it does not regress. Without the fix, the parallel-upgrade misbehavior in random ways. Differential Revision: https://phab.mercurial-scm.org/D10084
author Pierre-Yves David <pierre-yves.david@octobus.net>
date Mon, 01 Mar 2021 20:08:26 +0100
parents 59fa3890d40a
children bc2519513ae0
line wrap: on
line diff
--- a/mercurial/metadata.py	Fri Jan 29 13:07:00 2021 +0100
+++ b/mercurial/metadata.py	Mon Mar 01 20:08:26 2021 +0100
@@ -882,14 +882,14 @@
         data = {}, False
         if util.safehasattr(revlog, b'filteredrevs'):  # this is a changelog
             # Is the data previously shelved ?
-            sidedata = staging.pop(rev, None)
-            if sidedata is None:
+            data = staging.pop(rev, None)
+            if data is None:
                 # look at the queued result until we find the one we are lookig
                 # for (shelve the other ones)
                 r, data = sidedataq.get()
                 while r != rev:
                     staging[r] = data
-                    r, sidedata = sidedataq.get()
+                    r, data = sidedataq.get()
             tokens.release()
         sidedata, has_copies_info = data
         new_flag = 0