##// END OF EJS Templates
dirstate: speed up inner loop of read.
Vadim Gelfer -
r2425:be2fd639 default
parent child Browse files
Show More
@@ -168,15 +168,17 b' class dirstate(object):'
168 pos = 40
168 pos = 40
169 e_size = struct.calcsize(self.format)
169 e_size = struct.calcsize(self.format)
170 while pos < len(st):
170 while pos < len(st):
171 e = struct.unpack(self.format, st[pos:pos+e_size])
171 newpos = pos + e_size
172 e = struct.unpack(self.format, st[pos:newpos])
172 l = e[4]
173 l = e[4]
173 pos += e_size
174 pos = newpos
174 f = st[pos:pos + l]
175 newpos = pos + l
176 f = st[pos:newpos]
175 if '\0' in f:
177 if '\0' in f:
176 f, c = f.split('\0')
178 f, c = f.split('\0')
177 self.copies[f] = c
179 self.copies[f] = c
178 self.map[f] = e[:4]
180 self.map[f] = e[:4]
179 pos += l
181 pos = newpos
180
182
181 def copy(self, source, dest):
183 def copy(self, source, dest):
182 self.lazyread()
184 self.lazyread()
General Comments 0
You need to be logged in to leave comments. Login now