comparison mercurial/dirstate.py @ 4607:2651099c5018

dirstate: make reload lazy
author Matt Mackall <mpm@selenic.com>
date Mon, 18 Jun 2007 13:24:33 -0500
parents 9da7a4da650f
children 49dcac6ede26
comparison
equal deleted inserted replaced
4606:9da7a4da650f 4607:2651099c5018
239 self.parse(st) 239 self.parse(st)
240 except IOError, err: 240 except IOError, err:
241 if err.errno != errno.ENOENT: raise 241 if err.errno != errno.ENOENT: raise
242 242
243 def reload(self): 243 def reload(self):
244 def mtime(): 244 for a in "map copymap _branch pl dirs".split():
245 m = self.map and self.map.get('.hgignore') 245 if hasattr(self, a):
246 return m and m[-1] 246 self.__delattr__(a)
247 247 self.ignorefunc = None
248 old_mtime = self.ignorefunc and mtime()
249 self.read()
250 if old_mtime != mtime():
251 self.ignorefunc = None
252 248
253 def copy(self, source, dest): 249 def copy(self, source, dest):
254 self.markdirty() 250 self.markdirty()
255 self.copymap[dest] = source 251 self.copymap[dest] = source
256 252