D5564: revlog: use separate variables to track version flags

indygreg (Gregory Szorc) phabricator at mercurial-scm.org
Sat Jan 12 22:28:01 EST 2019


This revision was automatically updated to reflect the committed changes.
Closed by commit rHG3f807237dc94: revlog: use separate variables to track version flags (authored by indygreg, committed by ).

REPOSITORY
  rHG Mercurial

CHANGES SINCE LAST UPDATE
  https://phab.mercurial-scm.org/D5564?vs=13160&id=13196

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

AFFECTED FILES
  mercurial/revlog.py

CHANGE DETAILS

diff --git a/mercurial/revlog.py b/mercurial/revlog.py
--- a/mercurial/revlog.py
+++ b/mercurial/revlog.py
@@ -391,13 +391,13 @@
         opts = getattr(self.opener, 'options', {}) or {}
 
         if 'revlogv2' in opts:
-            versionflags = REVLOGV2 | FLAG_INLINE_DATA
+            newversionflags = REVLOGV2 | FLAG_INLINE_DATA
         elif 'revlogv1' in opts:
-            versionflags = REVLOGV1 | FLAG_INLINE_DATA
+            newversionflags = REVLOGV1 | FLAG_INLINE_DATA
             if 'generaldelta' in opts:
-                versionflags |= FLAG_GENERALDELTA
+                newversionflags |= FLAG_GENERALDELTA
         else:
-            versionflags = REVLOG_DEFAULT_VERSION
+            newversionflags = REVLOG_DEFAULT_VERSION
 
         if 'chunkcachesize' in opts:
             self._chunkcachesize = opts['chunkcachesize']
@@ -446,10 +446,14 @@
             if len(indexdata) > 0:
                 versionflags = versionformat_unpack(indexdata[:4])[0]
                 self._initempty = False
+            else:
+                versionflags = newversionflags
         except IOError as inst:
             if inst.errno != errno.ENOENT:
                 raise
 
+            versionflags = newversionflags
+
         self.version = versionflags
 
         flags = versionflags & ~0xFFFF



To: indygreg, #hg-reviewers
Cc: yuja, mercurial-devel


More information about the Mercurial-devel mailing list