Patchwork D6028: branchmap: prevent reading the file twice through different iterators

login
register
mail settings
Submitter phabricator
Date Feb. 27, 2019, 9:53 a.m.
Message ID <8439f515dab07f21116457245584e8bb@localhost.localdomain>
Download mbox | patch
Permalink /patch/38945/
State Not Applicable
Headers show

Comments

phabricator - Feb. 27, 2019, 9:53 a.m.
This revision was automatically updated to reflect the committed changes.
Closed by commit rHG8ad46ac6728e: branchmap: prevent reading the file twice through different iterators (authored by pulkit, committed by ).

REPOSITORY
  rHG Mercurial

CHANGES SINCE LAST UPDATE
  https://phab.mercurial-scm.org/D6028?vs=14246&id=14251

REVISION DETAIL
  https://phab.mercurial-scm.org/D6028

AFFECTED FILES
  mercurial/branchmap.py

CHANGE DETAILS




To: pulkit, #hg-reviewers, lothiraldan
Cc: lothiraldan, yuja, mercurial-devel

Patch

diff --git a/mercurial/branchmap.py b/mercurial/branchmap.py
--- a/mercurial/branchmap.py
+++ b/mercurial/branchmap.py
@@ -179,7 +179,7 @@ 
             if not bcache.validfor(repo):
                 # invalidate the cache
                 raise ValueError(r'tip differs')
-            bcache.load(repo, f)
+            bcache.load(repo, lineiter)
         except (IOError, OSError):
             return None
 
@@ -198,10 +198,10 @@ 
 
         return bcache
 
-    def load(self, repo, f):
-        """ fully loads the branchcache by reading from the file f """
+    def load(self, repo, lineiter):
+        """ fully loads the branchcache by reading from the file using the line
+        iterator passed"""
         cl = repo.changelog
-        lineiter = iter(f)
         for line in lineiter:
             line = line.rstrip('\n')
             if not line: