# HG changeset patch # User Valentin Gatien-Baron # Date 2019-01-21 21:37:30 # Node ID 465f2d0df9ae1f36e18fd42e33317a1e38e2f602 # Parent 6e9ba867a9461adcca7b08d5479ae5f74d1473d2 deltas: accept and skip None return for delta info They are some extra computation that will shortcut the delta compression if the delta seems hopeless, returning None. diff --git a/mercurial/revlogutils/deltas.py b/mercurial/revlogutils/deltas.py --- a/mercurial/revlogutils/deltas.py +++ b/mercurial/revlogutils/deltas.py @@ -1025,8 +1025,9 @@ class deltacomputer(object): nominateddeltas.append(deltainfo) for candidaterev in candidaterevs: candidatedelta = self._builddeltainfo(revinfo, candidaterev, fh) - if isgooddeltainfo(self.revlog, candidatedelta, revinfo): - nominateddeltas.append(candidatedelta) + if candidatedelta is not None: + if isgooddeltainfo(self.revlog, candidatedelta, revinfo): + nominateddeltas.append(candidatedelta) if nominateddeltas: deltainfo = min(nominateddeltas, key=lambda x: x.deltalen) if deltainfo is not None: