summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Gorse <mgorse@novell.com>2011-01-07 12:58:27 -0600
committerMike Gorse <mgorse@novell.com>2011-01-07 12:58:27 -0600
commitb721dc16ffb99047198744502bd3b59c5ad27e54 (patch)
tree95d34d0bbebb5e33d1661f387c886cab7a53e0b5
parent614c5881bf2a540a0cae3beb7f2b121d9cdaf6fb (diff)
downloadat-spi2-core-b721dc16ffb99047198744502bd3b59c5ad27e54.tar.gz
Update the cache before raising an event to a listener, not after
When a children-changed, property-change, or state-changed event is fired, update the cache before calling callbacks rather than after. This ensures that queries will return the correct information.
-rw-r--r--atspi/atspi-event-listener.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/atspi/atspi-event-listener.c b/atspi/atspi-event-listener.c
index 9156b3ba..0106c79c 100644
--- a/atspi/atspi-event-listener.c
+++ b/atspi/atspi-event-listener.c
@@ -846,7 +846,6 @@ atspi_dbus_handle_event (DBusConnection *bus, DBusMessage *message, void *data)
default:
break;
}
- _atspi_send_event (&e);
if (!strncmp (e.type, "object:children-changed", 23))
{
@@ -861,6 +860,8 @@ atspi_dbus_handle_event (DBusConnection *bus, DBusMessage *message, void *data)
cache_process_state_changed (&e);
}
+ _atspi_send_event (&e);
+
g_free (converted_type);
g_free (name);
g_free (detail);