# HG changeset patch
# User Martin von Zweigbergk <martinv...@google.com>
# Date 1483554904 28800
#      Wed Jan 04 10:35:04 2017 -0800
# Node ID c9c5864ddd54b240692a2712d59227c9d4ca2f99
# Parent  acf0037a9a5bb14603bb50c57822d4ab5896e5b5
repair: combine two loops over changelog revisions

This just saves a few lines.

diff -r acf0037a9a5b -r c9c5864ddd54 mercurial/repair.py
--- a/mercurial/repair.py       Wed Jan 04 10:07:12 2017 -0800
+++ b/mercurial/repair.py       Wed Jan 04 10:35:04 2017 -0800
@@ -91,6 +91,9 @@
     striplist = [cl.rev(node) for node in nodelist]
     striprev = min(striplist)
 
+    files = _collectfiles(repo, striprev)
+    saverevs = _collectbrokencsets(repo, files, striprev)
+
     # Some revisions with rev > striprev may not be descendants of striprev.
     # We have to find these revisions and put them in a bundle, so that
     # we can restore them after the truncations.
@@ -99,16 +102,11 @@
     # (head = revision in the set that has no descendant in the set;
     #  base = revision in the set that has no ancestor in the set)
     tostrip = set(striplist)
+    saveheads = set(saverevs)
     for r in cl.revs(start=striprev + 1):
         if any(p in tostrip for p in cl.parentrevs(r)):
             tostrip.add(r)
 
-    files = _collectfiles(repo, striprev)
-    saverevs = _collectbrokencsets(repo, files, striprev)
-
-    # compute heads
-    saveheads = set(saverevs)
-    for r in xrange(striprev + 1, len(cl)):
         if r not in tostrip:
             saverevs.add(r)
             saveheads.difference_update(cl.parentrevs(r))
_______________________________________________
Mercurial-devel mailing list
Mercurial-devel@mercurial-scm.org
https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel

Reply via email to