Mercurial > public > mercurial-scm > hg
comparison mercurial/revlogutils/deltas.py @ 40451:324ba8b14d78 stable
delta: skip "empty delta" optimisation for non-general case (issue6006)
Non-general delta repository cannot delta against anything than prev. So even if
the delta to prev is empty we should use it.
This is similar to the change made in bafa1c4bb7a8.
Differential Revision: https://phab.mercurial-scm.org/D5201
author | Boris Feld <boris.feld@octobus.net> |
---|---|
date | Thu, 01 Nov 2018 12:52:16 +0100 |
parents | bafa1c4bb7a8 |
children | 2f7e531ef3e7 |
comparison
equal
deleted
inserted
replaced
40450:07a66c1387d1 | 40451:324ba8b14d78 |
---|---|
591 if temptative is None: | 591 if temptative is None: |
592 break | 592 break |
593 group = [] | 593 group = [] |
594 for rev in temptative: | 594 for rev in temptative: |
595 # skip over empty delta (no need to include them in a chain) | 595 # skip over empty delta (no need to include them in a chain) |
596 while not (rev == nullrev or rev in tested or deltalength(rev)): | 596 while (revlog._generaldelta |
597 and not (rev == nullrev | |
598 or rev in tested | |
599 or deltalength(rev))): | |
597 tested.add(rev) | 600 tested.add(rev) |
598 rev = deltaparent(rev) | 601 rev = deltaparent(rev) |
599 # filter out revision we tested already | 602 # filter out revision we tested already |
600 if rev in tested: | 603 if rev in tested: |
601 continue | 604 continue |