##// END OF EJS Templates
inotify: do not recurse in handle_timeout(): call it explicitely, not in scan()...
Nicolas Dumazet -
r8604:578f2a00 default
parent child Browse files
Show More
@@ -155,6 +155,7 class repowatcher(object):
155 self.deferred = 0
155 self.deferred = 0
156
156
157 self.ds_info = self.dirstate_info()
157 self.ds_info = self.dirstate_info()
158 self.handle_timeout()
158 self.scan()
159 self.scan()
159
160
160 def event_time(self):
161 def event_time(self):
@@ -326,7 +327,6 class repowatcher(object):
326 del self.dir(self.tree, root)[fn]
327 del self.dir(self.tree, root)[fn]
327
328
328 def scan(self, topdir=''):
329 def scan(self, topdir=''):
329 self.handle_timeout()
330 ds = self.repo.dirstate._map.copy()
330 ds = self.repo.dirstate._map.copy()
331 self.add_watch(join(self.repo.root, topdir), self.mask)
331 self.add_watch(join(self.repo.root, topdir), self.mask)
332 for root, dirs, files in walk(self.repo, topdir):
332 for root, dirs, files in walk(self.repo, topdir):
@@ -363,6 +363,7 class repowatcher(object):
363 self.last_event = None
363 self.last_event = None
364 self.ui.note(_('%s dirstate reload\n') % self.event_time())
364 self.ui.note(_('%s dirstate reload\n') % self.event_time())
365 self.repo.dirstate.invalidate()
365 self.repo.dirstate.invalidate()
366 self.handle_timeout()
366 self.scan()
367 self.scan()
367 self.ui.note(_('%s end dirstate reload\n') % self.event_time())
368 self.ui.note(_('%s end dirstate reload\n') % self.event_time())
368
369
@@ -392,6 +393,7 class repowatcher(object):
392 if '_ignore' in self.repo.dirstate.__dict__:
393 if '_ignore' in self.repo.dirstate.__dict__:
393 delattr(self.repo.dirstate, '_ignore')
394 delattr(self.repo.dirstate, '_ignore')
394 self.ui.note(_('rescanning due to .hgignore change\n'))
395 self.ui.note(_('rescanning due to .hgignore change\n'))
396 self.handle_timeout()
395 self.scan()
397 self.scan()
396
398
397 def getstat(self, wpath):
399 def getstat(self, wpath):
General Comments 0
You need to be logged in to leave comments. Login now