summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gsearchtool/libeggsmclient/eggsmclient-xsmp.c13
1 files changed, 12 insertions, 1 deletions
diff --git a/gsearchtool/libeggsmclient/eggsmclient-xsmp.c b/gsearchtool/libeggsmclient/eggsmclient-xsmp.c
index 0601cd98..2121ae85 100644
--- a/gsearchtool/libeggsmclient/eggsmclient-xsmp.c
+++ b/gsearchtool/libeggsmclient/eggsmclient-xsmp.c
@@ -367,9 +367,13 @@ sm_client_xsmp_startup (EggSMClient *client,
xsmp->client_id = g_strdup (ret_client_id);
free (ret_client_id);
+#if !GTK_CHECK_VERSION (3, 0, 0)
gdk_threads_enter ();
+#endif
gdk_x11_set_sm_client_id (xsmp->client_id);
+#if !GTK_CHECK_VERSION (3, 0, 0)
gdk_threads_leave ();
+#endif
g_debug ("Got client ID \"%s\"", xsmp->client_id);
}
@@ -537,7 +541,9 @@ idle_do_pending_events (gpointer data)
EggSMClientXSMP *xsmp = data;
EggSMClient *client = data;
+#if !GTK_CHECK_VERSION (3, 0, 0)
gdk_threads_enter ();
+#endif
xsmp->idle = 0;
@@ -562,7 +568,9 @@ idle_do_pending_events (gpointer data)
}
out:
+#if !GTK_CHECK_VERSION (3, 0, 0)
gdk_threads_leave ();
+#endif
return FALSE;
}
@@ -1283,10 +1291,13 @@ static gboolean
process_ice_messages (IceConn ice_conn)
{
IceProcessMessagesStatus status;
-
+#if !GTK_CHECK_VERSION (3, 0, 0)
gdk_threads_enter ();
+#endif
status = IceProcessMessages (ice_conn, NULL, NULL);
+#if !GTK_CHECK_VERSION (3, 0, 0)
gdk_threads_leave ();
+#endif
switch (status)
{