Mercurial > public > mercurial-scm > hg
comparison mercurial/revlog.py @ 17150:3ac9592b7ab4
backout e7167007c083
This may have allowed unbounded I/O sizes with the current chunk
retrieval code.
author | Matt Mackall <mpm@selenic.com> |
---|---|
date | Thu, 12 Jul 2012 14:20:34 -0500 |
parents | ad1b5e070f16 |
children | e7cfe3587ea4 fe3b26048140 |
comparison
equal
deleted
inserted
replaced
17149:4b33422e2572 | 17150:3ac9592b7ab4 |
---|---|
318 base = index[rev][3] | 318 base = index[rev][3] |
319 while base != rev: | 319 while base != rev: |
320 rev = base | 320 rev = base |
321 base = index[rev][3] | 321 base = index[rev][3] |
322 return base | 322 return base |
323 def chainlength(self, rev): | |
324 index = self.index | |
325 base = index[rev][3] | |
326 length = index[rev][1] | |
327 while base != rev: | |
328 rev = base | |
329 base = index[rev][3] | |
330 length = length + index[rev][1] | |
331 return length | |
332 def flags(self, rev): | 323 def flags(self, rev): |
333 return self.index[rev][0] & 0xFFFF | 324 return self.index[rev][0] & 0xFFFF |
334 def rawsize(self, rev): | 325 def rawsize(self, rev): |
335 """return the length of the uncompressed text for a given revision""" | 326 """return the length of the uncompressed text for a given revision""" |
336 l = self.index[rev][2] | 327 l = self.index[rev][2] |
1053 l = len(data[1]) + len(data[0]) | 1044 l = len(data[1]) + len(data[0]) |
1054 if basecache[0] == rev: | 1045 if basecache[0] == rev: |
1055 chainbase = basecache[1] | 1046 chainbase = basecache[1] |
1056 else: | 1047 else: |
1057 chainbase = self.chainbase(rev) | 1048 chainbase = self.chainbase(rev) |
1049 dist = l + offset - self.start(chainbase) | |
1058 if self._generaldelta: | 1050 if self._generaldelta: |
1059 dist = l + self.chainlength(rev) | |
1060 base = rev | 1051 base = rev |
1061 else: | 1052 else: |
1062 dist = l + offset - self.start(chainbase) | |
1063 base = chainbase | 1053 base = chainbase |
1064 return dist, l, data, base, chainbase | 1054 return dist, l, data, base, chainbase |
1065 | 1055 |
1066 curr = len(self) | 1056 curr = len(self) |
1067 prev = curr - 1 | 1057 prev = curr - 1 |