diff options
author | Ryan Lortie <desrt@desrt.ca> | 2011-12-17 01:00:38 -0500 |
---|---|---|
committer | Ryan Lortie <desrt@desrt.ca> | 2011-12-19 12:51:12 -0500 |
commit | 363c2d684c3810e5995b1ce44e8bdc0751d9de7b (patch) | |
tree | 249a6b499fa4c32b7df1ccbaca543d07bc515c3d /gtk/gtkapplication.c | |
parent | 76d671d6a2ba44bece238b580728923374393c78 (diff) | |
download | gtk+-363c2d684c3810e5995b1ce44e8bdc0751d9de7b.tar.gz |
GtkApplication: lock gdk on incoming messages
When we have incoming activations or action invocations we should
acquire the GDK lock, just in case the program in question is using gdk
threads.
https://bugzilla.gnome.org/show_bug.cgi?id=665737
Diffstat (limited to 'gtk/gtkapplication.c')
-rw-r--r-- | gtk/gtkapplication.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/gtk/gtkapplication.c b/gtk/gtkapplication.c index 1b5f2a665c..307ee6f84b 100644 --- a/gtk/gtkapplication.c +++ b/gtk/gtkapplication.c @@ -322,6 +322,8 @@ gtk_application_before_emit (GApplication *application, const gchar *key; GVariant *value; + gdk_threads_enter (); + g_variant_iter_init (&iter, platform_data); while (g_variant_iter_loop (&iter, "{&sv}", &key, &value)) { @@ -345,6 +347,8 @@ gtk_application_after_emit (GApplication *application, GVariant *platform_data) { gdk_notify_startup_complete (); + + gdk_threads_leave (); } static void |