Show More
@@ -31,6 +31,21 def _parse(data): | |||
|
31 | 31 | else: |
|
32 | 32 | yield f, revlog.bin(n), '' |
|
33 | 33 | |
|
34 | def _text(it): | |
|
35 | """Given an iterator over (path, node, flags) tuples, returns a manifest | |
|
36 | text""" | |
|
37 | files = [] | |
|
38 | lines = [] | |
|
39 | _hex = revlog.hex | |
|
40 | for f, n, fl in it: | |
|
41 | files.append(f) | |
|
42 | # if this is changed to support newlines in filenames, | |
|
43 | # be sure to check the templates/ dir again (especially *-raw.tmpl) | |
|
44 | lines.append("%s\0%s%s\n" % (f, _hex(n), fl)) | |
|
45 | ||
|
46 | _checkforbidden(files) | |
|
47 | return ''.join(lines) | |
|
48 | ||
|
34 | 49 | class _lazymanifest(dict): |
|
35 | 50 | """This is the pure implementation of lazymanifest. |
|
36 | 51 | |
@@ -92,13 +107,7 class _lazymanifest(dict): | |||
|
92 | 107 | |
|
93 | 108 | def text(self): |
|
94 | 109 | """Get the full data of this manifest as a bytestring.""" |
|
95 |
|
|
|
96 | ||
|
97 | _hex = revlog.hex | |
|
98 | # if this is changed to support newlines in filenames, | |
|
99 | # be sure to check the templates/ dir again (especially *-raw.tmpl) | |
|
100 | return ''.join("%s\0%s%s\n" % ( | |
|
101 | f, _hex(n[:20]), flag) for f, n, flag in fl) | |
|
110 | return _text(self.iterentries()) | |
|
102 | 111 | |
|
103 | 112 | try: |
|
104 | 113 | _lazymanifest = parsers.lazymanifest |
@@ -578,13 +587,8 class treemanifest(object): | |||
|
578 | 587 | |
|
579 | 588 | def text(self): |
|
580 | 589 | """Get the full data of this manifest as a bytestring.""" |
|
581 |
fl = self. |
|
|
582 | _checkforbidden(fl) | |
|
583 | ||
|
584 | hex, flags = revlog.hex, self.flags | |
|
585 | # if this is changed to support newlines in filenames, | |
|
586 | # be sure to check the templates/ dir again (especially *-raw.tmpl) | |
|
587 | return ''.join("%s\0%s%s\n" % (f, hex(self[f]), flags(f)) for f in fl) | |
|
590 | flags = self.flags | |
|
591 | return _text((f, self[f], flags(f)) for f in self.keys()) | |
|
588 | 592 | |
|
589 | 593 | class manifest(revlog.revlog): |
|
590 | 594 | def __init__(self, opener): |
General Comments 0
You need to be logged in to leave comments.
Login now