Commits

Pierre-Yves David committed 2cd2ee2

evolve: filter nullid successors

Comments (0)

Files changed (1)

 reposetup = eh.final_reposetup
 
 #####################################################################
+### Critical fix                                                  ###
+#####################################################################
+
+@eh.wrapfunction(mercurial.obsolete, '_readmarkers')
+def safereadmarkers(orig, data):
+    """safe maker wrapper to remove nullid succesors
+
+    Nullid successors was created by older version of evolve.
+    """
+    for marker in orig(data):
+        if nullid in marker[1]:
+            marker = (marker[0],
+                      tuple(s for s in marker[1] if s != nullid),
+                      marker[2],
+                      marker[3])
+        yield marker
+
+
+#####################################################################
 ### Obsolescence Caching Logic                                    ###
 #####################################################################