# HG changeset patch # User Pierre-Yves David # Date 1669646931 -3600 # Node ID fa955e3f6aee4369f41557b3d2e123709c02ea0c # Parent e45590649888314807541e7eb4d4b7521558192f emitrevision: add a small closure to check if a base is usable We will make more use of this and make it more complex too. diff -r e45590649888 -r fa955e3f6aee mercurial/utils/storageutil.py --- a/mercurial/utils/storageutil.py Thu Dec 08 15:13:17 2022 +0100 +++ b/mercurial/utils/storageutil.py Mon Nov 28 15:48:51 2022 +0100 @@ -391,6 +391,9 @@ # Set of revs available to delta against. available = set() + def is_usable_base(rev): + return rev != nullrev and rev in available + for rev in revs: if rev == nullrev: continue @@ -420,7 +423,7 @@ elif deltaparentrev != nullrev: # Base revision was already emitted in this group. We can # always safely use the delta. - if deltaparentrev in available: + if is_usable_base(deltaparentrev): baserev = deltaparentrev # Base revision is a parent that hasn't been emitted already.