Show More
@@ -832,9 +832,18 b' class deltacomputer(object):' | |||||
832 |
|
832 | |||
833 | def _builddeltainfo(self, revinfo, base, fh): |
|
833 | def _builddeltainfo(self, revinfo, base, fh): | |
834 | # can we use the cached delta? |
|
834 | # can we use the cached delta? | |
835 | if revinfo.cachedelta and revinfo.cachedelta[0] == base: |
|
835 | delta = None | |
836 |
|
|
836 | if revinfo.cachedelta: | |
837 | else: |
|
837 | cachebase, cachediff = revinfo.cachedelta | |
|
838 | #check if the diff still apply | |||
|
839 | currentbase = cachebase | |||
|
840 | while (currentbase != nullrev | |||
|
841 | and currentbase != base | |||
|
842 | and self.revlog.length(currentbase) == 0): | |||
|
843 | currentbase = self.revlog.deltaparent(currentbase) | |||
|
844 | if currentbase == base: | |||
|
845 | delta = revinfo.cachedelta[1] | |||
|
846 | if delta is None: | |||
838 | delta = self._builddeltadiff(base, revinfo, fh) |
|
847 | delta = self._builddeltadiff(base, revinfo, fh) | |
839 | revlog = self.revlog |
|
848 | revlog = self.revlog | |
840 | header, data = revlog.compress(delta) |
|
849 | header, data = revlog.compress(delta) |
General Comments 0
You need to be logged in to leave comments.
Login now