From 203391ea6f55698236b7430e5e408e2f513c2f77 Mon Sep 17 00:00:00 2001 From: Tomeu Vizoso Date: Fri, 02 Nov 2007 11:27:20 +0000 Subject: Destroy only once, so we save some warnings. --- diff --git a/query.py b/query.py index 139e829..b74fe54 100644 --- a/query.py +++ b/query.py @@ -72,9 +72,10 @@ class _Cache(gobject.GObject): def remove_all(self, jobjects): jobjects = jobjects[:] for jobject in jobjects: - self._array.remove(jobject) - del self._dict[jobject.object_id] - self._destroy_jobjects(jobjects) + obj = self._dict[jobject.object_id] + self._array.remove(obj) + del self._dict[obj.object_id] + obj.destroy() def __len__(self): return len(self._array) @@ -91,6 +92,8 @@ class _Cache(gobject.GObject): self._datastore_updated_handler.remove() self._datastore_deleted_handler.remove() self._destroy_jobjects(self._array) + self._array = [] + self._dict = {} def _invalidate(self): self._destroy_jobjects(self._array) -- cgit v0.9.1