From 47e86258b97845b026049b3e333e1c2f4c27bea2 Mon Sep 17 00:00:00 2001 From: Durham Goode Date: Sun, 30 Aug 2015 13:34:30 -0700 Subject: [PATCH] revlog: move textlen calculation to be above delta chooser This moves the textlen calculation to be above the delta chooser. Since textlen is needed for calling isgooddelta, we need it above the delta chooser so future patches can call isgooddelta. --- mercurial/revlog.py | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/mercurial/revlog.py b/mercurial/revlog.py index 6c06c14d08..634c7abaed 100644 --- a/mercurial/revlog.py +++ b/mercurial/revlog.py @@ -1332,6 +1332,14 @@ class revlog(object): basecache = self._basecache p1r, p2r = self.rev(p1), self.rev(p2) + # full versions are inserted when the needed deltas + # become comparable to the uncompressed text + if text is None: + textlen = mdiff.patchedsize(self.rawsize(cachedelta[0]), + cachedelta[1]) + else: + textlen = len(text) + # should we try to build a delta? if prev != nullrev: if self._generaldelta: @@ -1345,14 +1353,6 @@ class revlog(object): d = builddelta(prev) dist, l, data, base, chainbase, chainlen, compresseddeltalen = d - # full versions are inserted when the needed deltas - # become comparable to the uncompressed text - if text is None: - textlen = mdiff.patchedsize(self.rawsize(cachedelta[0]), - cachedelta[1]) - else: - textlen = len(text) - if not self._isgooddelta(d, textlen): text = buildtext() data = self.compress(text)