Show More
@@ -20,17 +20,18 b' def _parsemanifest(mfdict, fdict, lines)' | |||||
20 | else: |
|
20 | else: | |
21 | mfdict[f] = bin(n) |
|
21 | mfdict[f] = bin(n) | |
22 |
|
22 | |||
23 | def _parse(lines): |
|
23 | def _parse(lines, mfdict, flags): | |
24 | mfdict = manifestdict() |
|
|||
25 | try: |
|
24 | try: | |
26 |
parsers.parse_manifest(mfdict, |
|
25 | parsers.parse_manifest(mfdict, flags, lines) | |
27 | except AttributeError: |
|
26 | except AttributeError: | |
28 |
_parsemanifest(mfdict, |
|
27 | _parsemanifest(mfdict, flags, lines) | |
29 | return mfdict |
|
28 | return mfdict | |
30 |
|
29 | |||
31 | class manifestdict(dict): |
|
30 | class manifestdict(dict): | |
32 | def __init__(self): |
|
31 | def __init__(self, data=''): | |
33 | self._flags = {} |
|
32 | self._flags = {} | |
|
33 | _parse(data, self, self._flags) | |||
|
34 | ||||
34 | def __setitem__(self, k, v): |
|
35 | def __setitem__(self, k, v): | |
35 | assert v is not None |
|
36 | assert v is not None | |
36 | dict.__setitem__(self, k, v) |
|
37 | dict.__setitem__(self, k, v) | |
@@ -250,7 +251,8 b' class manifest(revlog.revlog):' | |||||
250 |
|
251 | |||
251 | def readdelta(self, node): |
|
252 | def readdelta(self, node): | |
252 | r = self.rev(node) |
|
253 | r = self.rev(node) | |
253 |
|
|
254 | d = mdiff.patchtext(self.revdiff(self.deltaparent(r), r)) | |
|
255 | return manifestdict(d) | |||
254 |
|
256 | |||
255 | def readfast(self, node): |
|
257 | def readfast(self, node): | |
256 | '''use the faster of readdelta or read''' |
|
258 | '''use the faster of readdelta or read''' | |
@@ -267,7 +269,7 b' class manifest(revlog.revlog):' | |||||
267 | return self._mancache[node][0] |
|
269 | return self._mancache[node][0] | |
268 | text = self.revision(node) |
|
270 | text = self.revision(node) | |
269 | arraytext = array.array('c', text) |
|
271 | arraytext = array.array('c', text) | |
270 |
m = |
|
272 | m = manifestdict(text) | |
271 | self._mancache[node] = (m, arraytext) |
|
273 | self._mancache[node] = (m, arraytext) | |
272 | return m |
|
274 | return m | |
273 |
|
275 |
General Comments 0
You need to be logged in to leave comments.
Login now