##// END OF EJS Templates
Fix bundle repos to use an index tuple consistent with revlogng...
mason@suse.com -
r2074:01ee43dd default
parent child Browse files
Show More
@@ -31,6 +31,7 b' class bundlerevlog(revlog.revlog):'
31 31 #
32 32 revlog.revlog.__init__(self, opener, indexfile, datafile)
33 33 self.bundlefile = bundlefile
34 self.basemap = {}
34 35 def chunkpositer():
35 36 for chunk in changegroup.chunkiter(bundlefile):
36 37 pos = bundlefile.tell()
@@ -58,7 +59,8 b' class bundlerevlog(revlog.revlog):'
58 59 if not prev:
59 60 prev = p1
60 61 # start, size, base is not used, link, p1, p2, delta ref
61 e = (start, size, None, link, p1, p2, node, prev)
62 e = (start, size, None, link, p1, p2, node)
63 self.basemap[n] = prev
62 64 self.index.append(e)
63 65 self.nodemap[node] = n
64 66 prev = node
@@ -68,9 +70,9 b' class bundlerevlog(revlog.revlog):'
68 70 """is rev from the bundle"""
69 71 if rev < 0:
70 72 return False
71 return len(self.index[rev]) > 7
72 def bundlebase(self, rev): return self.index[rev][7]
73 def chunk(self, rev):
73 return rev in self.basemap
74 def bundlebase(self, rev): return self.basemap[rev]
75 def chunk(self, rev, df=None):
74 76 # Warning: in case of bundle, the diff is against bundlebase,
75 77 # not against rev - 1
76 78 # XXX: could use some caching
General Comments 0
You need to be logged in to leave comments. Login now