Move the process_deferred_messages idle cb when switching main contexts
authorMike Gorse <mgorse@suse.com>
Thu, 5 Sep 2013 02:51:05 +0000 (21:51 -0500)
committerMike Gorse <mgorse@suse.com>
Thu, 5 Sep 2013 02:51:05 +0000 (21:51 -0500)
commit4ed79ce1c027216ccb4c2e58b26dffe9ec482720
treeead4c69c22d460cee7444f24363f51f737d6a5b4
parent777ff89b3dc583b19fe50f110db651a4329cb84c
Move the process_deferred_messages idle cb when switching main contexts

If at-spi2-atk enters a new main context and calls
atspi_set_main_context and process_deferred_messages has already been
scheduled for the original context, then it would not be called until
the original main loop is re-entered, meaning that Orca will sometimes
deadlock in its preferences dialog, since its key listener won't get the
notification for its own key event, as it will be deferred, while
at-spi2-atk waits for the listener to be processed.

https://bugzilla.gnome.org/show_bug.cgi?id=707218
atspi/atspi-misc.c