elif os.path.isfile(childpath) and not os.path.islink(childpath):
must_upload = self._check_db_file(childpath)
if must_upload:
- self._add_to_dequeue(childpath)
+ self._append_to_deque(childpath)
else:
if os.path.islink(childpath):
self.warn("WARNING: cannot backup symlink %s" % quote_local_unicode_path(childpath))
self.is_upload_ready = True
self._process_deque()
- def _append_to_deque(self, func, path, event_mask):
- thunk = (func, path, event_mask)
- self._upload_deque.append(thunk)
+ def _append_to_deque(self, path):
+ self._upload_deque.append(path)
self._pending.add(path)
if self.is_upload_ready:
self._process_deque()
def _process_deque(self):
while True:
try:
- fields = self._upload_deque.pop()
- func = fields[0]
- func(*fields[1:])
+ path = self._upload_deque.pop()
+ self._process(path)
except IndexError:
break
self._log("inotify event %r, %r, %r\n" % (opaque, path, ', '.join(self._inotify.humanReadableMask(events_mask))))
self._stats_provider.count('drop_upload.files_queued', 1)
if path not in self._pending:
- self._append_to_deque(self._process, path, events_mask)
+ self._append_to_deque(path)
- def _process(self, path, events_mask):
+ def _process(self, path):
d = defer.succeed(None)
# FIXME (ticket #1712): if this already exists as a mutable file, we replace the