Show More
@@ -14,6 +14,8 b' from demandload import *' | |||||
14 | demandload(globals(), "time bisect stat util re errno") |
|
14 | demandload(globals(), "time bisect stat util re errno") | |
15 |
|
15 | |||
16 | class dirstate(object): |
|
16 | class dirstate(object): | |
|
17 | format = ">cllll" | |||
|
18 | ||||
17 | def __init__(self, opener, ui, root): |
|
19 | def __init__(self, opener, ui, root): | |
18 | self.opener = opener |
|
20 | self.opener = opener | |
19 | self.root = root |
|
21 | self.root = root | |
@@ -164,10 +166,11 b' class dirstate(object):' | |||||
164 | self.pl = [st[:20], st[20: 40]] |
|
166 | self.pl = [st[:20], st[20: 40]] | |
165 |
|
167 | |||
166 | pos = 40 |
|
168 | pos = 40 | |
|
169 | e_size = struct.calcsize(self.format) | |||
167 | while pos < len(st): |
|
170 | while pos < len(st): | |
168 |
e = struct.unpack( |
|
171 | e = struct.unpack(self.format, st[pos:pos+e_size]) | |
169 | l = e[4] |
|
172 | l = e[4] | |
170 |
pos += |
|
173 | pos += e_size | |
171 | f = st[pos:pos + l] |
|
174 | f = st[pos:pos + l] | |
172 | if '\0' in f: |
|
175 | if '\0' in f: | |
173 | f, c = f.split('\0') |
|
176 | f, c = f.split('\0') | |
@@ -241,7 +244,7 b' class dirstate(object):' | |||||
241 | c = self.copied(f) |
|
244 | c = self.copied(f) | |
242 | if c: |
|
245 | if c: | |
243 | f = f + "\0" + c |
|
246 | f = f + "\0" + c | |
244 |
e = struct.pack( |
|
247 | e = struct.pack(self.format, e[0], e[1], e[2], e[3], len(f)) | |
245 | st.write(e + f) |
|
248 | st.write(e + f) | |
246 | self.dirty = 0 |
|
249 | self.dirty = 0 | |
247 |
|
250 |
General Comments 0
You need to be logged in to leave comments.
Login now