Mercurial > public > mercurial-scm > hg
comparison mercurial/unionrepo.py @ 38176:df5f6881cebd
unionrepo: fill in uncompressed length of revlog entry
It can be either -1 or a valid length, but shouldn't be None. IIUC, we can
simply trust the length retrieved from the revlog to be overlaid. I don't
bother thinking whether the compressed length can be copied as well. We'll
need to fix it later.
author | Yuya Nishihara <yuya@tcha.org> |
---|---|
date | Sat, 26 May 2018 11:31:51 +0900 |
parents | 0664be4f0c1f |
children | 6104b203bec8 |
comparison
equal
deleted
inserted
replaced
38175:fbe239064064 | 38176:df5f6881cebd |
---|---|
47 self.repotiprev = n - 1 | 47 self.repotiprev = n - 1 |
48 self.bundlerevs = set() # used by 'bundle()' revset expression | 48 self.bundlerevs = set() # used by 'bundle()' revset expression |
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, base, linkrev, p1rev, p2rev, node = rev | 52 _start, _csize, rsize, base, linkrev, p1rev, p2rev, node = rev |
53 flags = _start & 0xFFFF | 53 flags = _start & 0xFFFF |
54 | 54 |
55 if linkmapper is None: # link is to same revlog | 55 if linkmapper is None: # link is to same revlog |
56 assert linkrev == rev2 # we never link back | 56 assert linkrev == rev2 # we never link back |
57 link = n | 57 link = n |
67 continue | 67 continue |
68 | 68 |
69 p1node = self.revlog2.node(p1rev) | 69 p1node = self.revlog2.node(p1rev) |
70 p2node = self.revlog2.node(p2rev) | 70 p2node = self.revlog2.node(p2rev) |
71 | 71 |
72 e = (flags, None, None, base, | 72 # TODO: it's probably wrong to set compressed length to None, but |
73 # I have no idea if csize is valid in the base revlog context. | |
74 e = (flags, None, rsize, base, | |
73 link, self.rev(p1node), self.rev(p2node), node) | 75 link, self.rev(p1node), self.rev(p2node), node) |
74 self.index.insert(-1, e) | 76 self.index.insert(-1, e) |
75 self.nodemap[node] = n | 77 self.nodemap[node] = n |
76 self.bundlerevs.add(n) | 78 self.bundlerevs.add(n) |
77 n += 1 | 79 n += 1 |