From 85af8a25e4fa1c4a65cdbe145b70c334aac97e48 Mon Sep 17 00:00:00 2001 From: Mike Gorse Date: Sat, 21 Jan 2012 12:13:02 -0600 Subject: [PATCH] When an object goes away, remove from queue of pending cache additions Items are added to the cache in an idle (see commit 75ff19), meaning that it is possible for an object to go away between the time it is queued for addition and the time the additions are made. https://bugzilla.gnome.org/show_bug.cgi?id=666371 --- atk-adaptor/accessible-cache.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/atk-adaptor/accessible-cache.c b/atk-adaptor/accessible-cache.c index fa6b561..943a320 100644 --- a/atk-adaptor/accessible-cache.c +++ b/atk-adaptor/accessible-cache.c @@ -179,6 +179,8 @@ remove_object (GObject * source, GObject * gobj, gpointer data) g_signal_emit (cache, cache_signals [OBJECT_REMOVED], 0, gobj); g_hash_table_remove (cache->objects, gobj); } + else + g_queue_remove (cache->add_traversal, gobj); } static void -- 2.7.4