Show More
@@ -49,7 +49,7 b' class unionrevlog(revlog.revlog):' | |||||
49 | for rev2 in self.revlog2: |
|
49 | for rev2 in self.revlog2: | |
50 | rev = self.revlog2.index[rev2] |
|
50 | rev = self.revlog2.index[rev2] | |
51 | # rev numbers - in revlog2, very different from self.rev |
|
51 | # rev numbers - in revlog2, very different from self.rev | |
52 |
_start, _csize, _rsize, |
|
52 | _start, _csize, _rsize, base, linkrev, p1rev, p2rev, node = rev | |
53 |
|
53 | |||
54 | if linkmapper is None: # link is to same revlog |
|
54 | if linkmapper is None: # link is to same revlog | |
55 | assert linkrev == rev2 # we never link back |
|
55 | assert linkrev == rev2 # we never link back | |
@@ -57,6 +57,9 b' class unionrevlog(revlog.revlog):' | |||||
57 | else: # rev must be mapped from repo2 cl to unified cl by linkmapper |
|
57 | else: # rev must be mapped from repo2 cl to unified cl by linkmapper | |
58 | link = linkmapper(linkrev) |
|
58 | link = linkmapper(linkrev) | |
59 |
|
59 | |||
|
60 | if linkmapper is not None: # link is to same revlog | |||
|
61 | base = linkmapper(base) | |||
|
62 | ||||
60 | if node in self.nodemap: |
|
63 | if node in self.nodemap: | |
61 | # this happens for the common revlog revisions |
|
64 | # this happens for the common revlog revisions | |
62 | self.bundlerevs.add(self.nodemap[node]) |
|
65 | self.bundlerevs.add(self.nodemap[node]) | |
@@ -65,7 +68,7 b' class unionrevlog(revlog.revlog):' | |||||
65 | p1node = self.revlog2.node(p1rev) |
|
68 | p1node = self.revlog2.node(p1rev) | |
66 | p2node = self.revlog2.node(p2rev) |
|
69 | p2node = self.revlog2.node(p2rev) | |
67 |
|
70 | |||
68 |
e = (None, None, None, |
|
71 | e = (None, None, None, base, | |
69 | link, self.rev(p1node), self.rev(p2node), node) |
|
72 | link, self.rev(p1node), self.rev(p2node), node) | |
70 | self.index.insert(-1, e) |
|
73 | self.index.insert(-1, e) | |
71 | self.nodemap[node] = n |
|
74 | self.nodemap[node] = n |
General Comments 0
You need to be logged in to leave comments.
Login now