hgext/rebase.py
changeset 38672 0f8599afb92f
parent 38671 99ed6e2f6606
child 38673 20a30bb8f276
--- a/hgext/rebase.py	Wed Jul 11 15:03:39 2018 -0700
+++ b/hgext/rebase.py	Wed Jul 11 15:01:47 2018 -0700
@@ -1869,19 +1869,17 @@
             # no successor
             obsoletenotrebased[srcrev] = None
         else:
-            destnode = cl.node(destmap[srcrev])
-            for succnode in successors:
-                if succnode not in nodemap:
-                    continue
-                if cl.isancestor(succnode, destnode):
-                    obsoletenotrebased[srcrev] = nodemap[succnode]
+            dstrev = destmap[srcrev]
+            succrevs = [nodemap[s] for s in successors if s in nodemap]
+            for succrev in succrevs:
+                if cl.isancestorrev(succrev, dstrev):
+                    obsoletenotrebased[srcrev] = succrev
                     break
             else:
                 # If 'srcrev' has a successor in rebase set but none in
                 # destination (which would be catched above), we shall skip it
                 # and its descendants to avoid divergence.
-                if any(nodemap[s] in destmap for s in successors
-                       if s in nodemap):
+                if any(s in destmap for s in succrevs):
                     obsoletewithoutsuccessorindestination.add(srcrev)
 
     return (