# HG changeset patch # User Jun Wu # Date 2017-06-03 02:34:56 # Node ID 9933410bf76342b6199edd93fda430441a6b22c9 # Parent 2c1400d43fd2988961816fc9ab3679c25f91fe92 obsstore: move marker version reading to a separate function This allows us to read marker version without reading markers. diff --git a/mercurial/obsolete.py b/mercurial/obsolete.py --- a/mercurial/obsolete.py +++ b/mercurial/obsolete.py @@ -439,12 +439,14 @@ def _fm1readmarkers(data, off): formats = {_fm0version: (_fm0readmarkers, _fm0encodeonemarker), _fm1version: (_fm1readmarkers, _fm1encodeonemarker)} +def _readmarkerversion(data): + return _unpack('>B', data[0:1])[0] + @util.nogc def _readmarkers(data): """Read and enumerate markers from raw data""" - off = 0 - diskversion = _unpack('>B', data[off:off + 1])[0] - off += 1 + diskversion = _readmarkerversion(data) + off = 1 if diskversion not in formats: msg = _('parsing obsolete marker: unknown version %r') % diskversion raise error.UnknownVersion(msg, version=diskversion)