Show More
@@ -606,6 +606,7 b' class _deltainfo(object):' | |||
|
606 | 606 | chainbase = attr.ib() |
|
607 | 607 | chainlen = attr.ib() |
|
608 | 608 | compresseddeltalen = attr.ib() |
|
609 | snapshotdepth = attr.ib() | |
|
609 | 610 | |
|
610 | 611 | class _deltacomputer(object): |
|
611 | 612 | def __init__(self, revlog): |
@@ -736,8 +737,21 b' class _deltacomputer(object):' | |||
|
736 | 737 | chainlen, compresseddeltalen = revlog._chaininfo(base) |
|
737 | 738 | chainlen += 1 |
|
738 | 739 | compresseddeltalen += deltalen |
|
740 | ||
|
741 | revlog = self.revlog | |
|
742 | snapshotdepth = None | |
|
743 | if deltabase == nullrev: | |
|
744 | snapshotdepth = 0 | |
|
745 | elif revlog._sparserevlog and revlog.issnapshot(deltabase): | |
|
746 | # A delta chain should always be one full snapshot, | |
|
747 | # zero or more semi-snapshots, and zero or more deltas | |
|
748 | p1, p2 = revlog.rev(revinfo.p1), revlog.rev(revinfo.p2) | |
|
749 | if deltabase not in (p1, p2) and revlog.issnapshot(deltabase): | |
|
750 | snapshotdepth = len(revlog._deltachain(deltabase)[0]) | |
|
751 | ||
|
739 | 752 | return _deltainfo(dist, deltalen, (header, data), deltabase, |
|
740 |
chainbase, chainlen, compresseddeltalen |
|
|
753 | chainbase, chainlen, compresseddeltalen, | |
|
754 | snapshotdepth) | |
|
741 | 755 | |
|
742 | 756 | def finddeltainfo(self, revinfo, fh): |
|
743 | 757 | """Find an acceptable delta against a candidate revision |
General Comments 0
You need to be logged in to leave comments.
Login now