Show More
@@ -27,10 +27,11 b' import struct, zlib, errno' | |||
|
27 | 27 | REVLOGV0 = 0 |
|
28 | 28 | REVLOGNG = 1 |
|
29 | 29 | REVLOGNGINLINEDATA = (1 << 16) |
|
30 | REVLOGGENERALDELTA = (1 << 17) | |
|
30 | 31 | REVLOG_DEFAULT_FLAGS = REVLOGNGINLINEDATA |
|
31 | 32 | REVLOG_DEFAULT_FORMAT = REVLOGNG |
|
32 | 33 | REVLOG_DEFAULT_VERSION = REVLOG_DEFAULT_FORMAT | REVLOG_DEFAULT_FLAGS |
|
33 | REVLOGNG_FLAGS = REVLOGNGINLINEDATA | |
|
34 | REVLOGNG_FLAGS = REVLOGNGINLINEDATA | REVLOGGENERALDELTA | |
|
34 | 35 | |
|
35 | 36 | # revlog index flags |
|
36 | 37 | REVIDX_KNOWN_FLAGS = 0 |
@@ -243,6 +244,7 b' class revlog(object):' | |||
|
243 | 244 | |
|
244 | 245 | self.version = v |
|
245 | 246 | self._inline = v & REVLOGNGINLINEDATA |
|
247 | self._generaldelta = v & REVLOGGENERALDELTA | |
|
246 | 248 | flags = v & ~0xFFFF |
|
247 | 249 | fmt = v & 0xFFFF |
|
248 | 250 | if fmt == REVLOGV0 and flags: |
@@ -830,8 +832,11 b' class revlog(object):' | |||
|
830 | 832 | |
|
831 | 833 | def deltaparent(self, rev): |
|
832 | 834 | """return deltaparent of the given revision""" |
|
833 |
|
|
|
835 | base = self.index[rev][3] | |
|
836 | if base == rev: | |
|
834 | 837 | return nullrev |
|
838 | elif self._generaldelta: | |
|
839 | return base | |
|
835 | 840 | else: |
|
836 | 841 | return rev - 1 |
|
837 | 842 | |
@@ -865,11 +870,15 b' class revlog(object):' | |||
|
865 | 870 | # build delta chain |
|
866 | 871 | chain = [] |
|
867 | 872 | index = self.index # for performance |
|
873 | generaldelta = self._generaldelta | |
|
868 | 874 | iterrev = rev |
|
869 | 875 | e = index[iterrev] |
|
870 | 876 | while iterrev != e[3] and iterrev != cachedrev: |
|
871 | 877 | chain.append(iterrev) |
|
872 |
i |
|
|
878 | if generaldelta: | |
|
879 | iterrev = e[3] | |
|
880 | else: | |
|
881 | iterrev -= 1 | |
|
873 | 882 | e = index[iterrev] |
|
874 | 883 | chain.reverse() |
|
875 | 884 | base = iterrev |
General Comments 0
You need to be logged in to leave comments.
Login now