##// END OF EJS Templates
context: replace pseudo-set by real set
Simon Heimberg -
r8380:a00a4db7 default
parent child Browse files
Show More
@@ -155,19 +155,19 b' class changectx(object):'
155 return changectx(self._repo, n)
155 return changectx(self._repo, n)
156
156
157 def walk(self, match):
157 def walk(self, match):
158 fdict = dict.fromkeys(match.files())
158 fset = set(match.files())
159 # for dirstate.walk, files=['.'] means "walk the whole tree".
159 # for dirstate.walk, files=['.'] means "walk the whole tree".
160 # follow that here, too
160 # follow that here, too
161 fdict.pop('.', None)
161 fset.discard('.')
162 for fn in self:
162 for fn in self:
163 for ffn in fdict:
163 for ffn in fset:
164 # match if the file is the exact name or a directory
164 # match if the file is the exact name or a directory
165 if ffn == fn or fn.startswith("%s/" % ffn):
165 if ffn == fn or fn.startswith("%s/" % ffn):
166 del fdict[ffn]
166 fset.remove(ffn)
167 break
167 break
168 if match(fn):
168 if match(fn):
169 yield fn
169 yield fn
170 for fn in sorted(fdict):
170 for fn in sorted(fset):
171 if match.bad(fn, 'No such file in rev ' + str(self)) and match(fn):
171 if match.bad(fn, 'No such file in rev ' + str(self)) and match(fn):
172 yield fn
172 yield fn
173
173
General Comments 0
You need to be logged in to leave comments. Login now