diff --git a/mercurial/revlog.py b/mercurial/revlog.py --- a/mercurial/revlog.py +++ b/mercurial/revlog.py @@ -44,6 +44,7 @@ INDEX_ENTRY_V0, INDEX_ENTRY_V1, INDEX_ENTRY_V2, + INDEX_HEADER, REVLOGV0, REVLOGV1, REVLOGV1_FLAGS, @@ -327,10 +328,6 @@ return INDEX_ENTRY_V0.pack(*e2) -versionformat = struct.Struct(b">I") -versionformat_pack = versionformat.pack -versionformat_unpack = versionformat.unpack - # corresponds to uncompressed length of indexformatng (2 gigs, 4-byte # signed integer) _maxentrysize = 0x7FFFFFFF @@ -348,7 +345,7 @@ def packentry(self, entry, node, version, rev): p = INDEX_ENTRY_V1.pack(*entry) if rev == 0: - p = versionformat_pack(version) + p[4:] + p = INDEX_HEADER.pack(version) + p[4:] return p @@ -363,7 +360,7 @@ def packentry(self, entry, node, version, rev): p = INDEX_ENTRY_V2.pack(*entry) if rev == 0: - p = versionformat_pack(version) + p[4:] + p = INDEX_HEADER.pack(version) + p[4:] return p @@ -579,7 +576,7 @@ else: indexdata = f.read() if len(indexdata) > 0: - versionflags = versionformat_unpack(indexdata[:4])[0] + versionflags = INDEX_HEADER.unpack(indexdata[:4])[0] self._initempty = False else: versionflags = newversionflags diff --git a/mercurial/revlogutils/constants.py b/mercurial/revlogutils/constants.py --- a/mercurial/revlogutils/constants.py +++ b/mercurial/revlogutils/constants.py @@ -15,6 +15,8 @@ ### main revlog header +INDEX_HEADER = struct.Struct(b">I") + ## revlog version REVLOGV0 = 0 REVLOGV1 = 1