aboutsummaryrefslogtreecommitdiffstats
path: root/x11-toolkits
diff options
context:
space:
mode:
authorjylefort <jylefort@FreeBSD.org>2005-04-14 05:06:25 +0800
committerjylefort <jylefort@FreeBSD.org>2005-04-14 05:06:25 +0800
commit45346325f80041b89687ed4fcee82623283bf290 (patch)
treed41f8508e0ef17657c771bea6ad28e6dfd951546 /x11-toolkits
parente616480e355989ee4cab4cbeebd2e093d147cb83 (diff)
downloadfreebsd-ports-graphics-45346325f80041b89687ed4fcee82623283bf290.tar.gz
freebsd-ports-graphics-45346325f80041b89687ed4fcee82623283bf290.tar.zst
freebsd-ports-graphics-45346325f80041b89687ed4fcee82623283bf290.zip
Fixes thread safety
(http://bugzilla.gnome.org/show_bug.cgi?id=156885). Approved by: adamw (mentor)
Diffstat (limited to 'x11-toolkits')
-rw-r--r--x11-toolkits/eel/Makefile1
-rw-r--r--x11-toolkits/eel/files/patch-eel_eel-editable-label.c13
-rw-r--r--x11-toolkits/eel/files/patch-eel_eel-gnome-extensions.c12
-rw-r--r--x11-toolkits/eel/files/patch-eel_eel-open-with-dialog.c47
-rw-r--r--x11-toolkits/eel/files/patch-eel_eel-stock-dialogs.c40
5 files changed, 110 insertions, 3 deletions
diff --git a/x11-toolkits/eel/Makefile b/x11-toolkits/eel/Makefile
index 310358fec5e..c933c7ef01c 100644
--- a/x11-toolkits/eel/Makefile
+++ b/x11-toolkits/eel/Makefile
@@ -7,6 +7,7 @@
PORTNAME= eel
PORTVERSION= 2.10.1
+PORTREVISION= 1
CATEGORIES= x11-toolkits gnome
MASTER_SITES= ${MASTER_SITE_GNOME}
MASTER_SITE_SUBDIR= sources/${PORTNAME}/2.10
diff --git a/x11-toolkits/eel/files/patch-eel_eel-editable-label.c b/x11-toolkits/eel/files/patch-eel_eel-editable-label.c
new file mode 100644
index 00000000000..042628e4b6f
--- /dev/null
+++ b/x11-toolkits/eel/files/patch-eel_eel-editable-label.c
@@ -0,0 +1,13 @@
+--- eel/eel-editable-label.c.orig Mon Mar 21 06:20:09 2005
++++ eel/eel-editable-label.c Mon Mar 21 06:20:12 2005
+@@ -3998,7 +3998,10 @@
+ static gboolean
+ eel_editable_label_accessible_idle_notify_insert (gpointer data)
+ {
++ GDK_THREADS_ENTER ();
+ eel_editable_label_accessible_notify_insert (data);
++ GDK_THREADS_LEAVE ();
++
+ return FALSE;
+ }
+
diff --git a/x11-toolkits/eel/files/patch-eel_eel-gnome-extensions.c b/x11-toolkits/eel/files/patch-eel_eel-gnome-extensions.c
new file mode 100644
index 00000000000..3d6922deda5
--- /dev/null
+++ b/x11-toolkits/eel/files/patch-eel_eel-gnome-extensions.c
@@ -0,0 +1,12 @@
+--- eel/eel-gnome-extensions.c.orig Mon Mar 21 06:20:58 2005
++++ eel/eel-gnome-extensions.c Mon Mar 21 06:21:00 2005
+@@ -246,7 +246,9 @@
+ IconSelectionData *selection_data;
+
+ selection_data = (IconSelectionData *) callback_data;
++ GDK_THREADS_ENTER ();
+ gtk_widget_destroy (selection_data->dialog);
++ GDK_THREADS_LEAVE ();
+ g_free (selection_data);
+ return FALSE;
+ }
diff --git a/x11-toolkits/eel/files/patch-eel_eel-open-with-dialog.c b/x11-toolkits/eel/files/patch-eel_eel-open-with-dialog.c
index 9512a270329..b94075cd399 100644
--- a/x11-toolkits/eel/files/patch-eel_eel-open-with-dialog.c
+++ b/x11-toolkits/eel/files/patch-eel_eel-open-with-dialog.c
@@ -1,6 +1,6 @@
---- eel/eel-open-with-dialog.c.orig Mon Oct 4 00:30:27 2004
-+++ eel/eel-open-with-dialog.c Mon Oct 4 00:30:40 2004
-@@ -380,7 +380,7 @@
+--- eel/eel-open-with-dialog.c.orig Mon Mar 21 06:25:51 2005
++++ eel/eel-open-with-dialog.c Mon Mar 21 06:39:29 2005
+@@ -422,7 +422,7 @@
gtk_file_chooser_set_select_multiple (GTK_FILE_CHOOSER (chooser),
FALSE);
gtk_file_chooser_set_current_folder (GTK_FILE_CHOOSER (chooser),
@@ -9,3 +9,44 @@
gtk_widget_show (chooser);
}
+@@ -452,10 +452,13 @@
+ char *file;
+ gboolean long_operation;
+
++ GDK_THREADS_ENTER ();
++
+ long_operation = FALSE;
+ do {
+ if (!dialog->details->add_icon_paths) {
+ dialog->details->add_icons_idle_id = 0;
++ GDK_THREADS_LEAVE ();
+ return FALSE;
+ }
+
+@@ -508,6 +511,8 @@
+ /* don't go back into the main loop if this wasn't very hard to do */
+ } while (!long_operation);
+
++ GDK_THREADS_LEAVE ();
++
+ return TRUE;
+ }
+
+@@ -575,6 +580,8 @@
+ GSList *l;
+ const char *prev_name;
+
++ GDK_THREADS_ENTER ();
++
+ /* create list store */
+ dialog->details->program_list_store = gtk_list_store_new (NUM_COLUMNS,
+ GDK_TYPE_PIXBUF,
+@@ -633,6 +640,8 @@
+ NULL);
+
+ gtk_tree_view_append_column (GTK_TREE_VIEW (dialog->details->program_list), column);
++
++ GDK_THREADS_LEAVE ();
+
+ dialog->details->add_icon_paths = g_slist_reverse (dialog->details->add_icon_paths);
+
diff --git a/x11-toolkits/eel/files/patch-eel_eel-stock-dialogs.c b/x11-toolkits/eel/files/patch-eel_eel-stock-dialogs.c
new file mode 100644
index 00000000000..f1389b93996
--- /dev/null
+++ b/x11-toolkits/eel/files/patch-eel_eel-stock-dialogs.c
@@ -0,0 +1,40 @@
+--- eel/eel-stock-dialogs.c.orig Mon Mar 21 06:35:10 2005
++++ eel/eel-stock-dialogs.c Mon Mar 21 06:36:23 2005
+@@ -104,6 +104,8 @@
+ {
+ guint handler_id;
+
++ GDK_THREADS_ENTER ();
++
+ handler_id = GPOINTER_TO_UINT (g_object_get_data (G_OBJECT (callback_data),
+ "eel-stock-dialogs/delayed_close_handler_timeout_id"));
+
+@@ -113,6 +115,8 @@
+
+ gtk_object_destroy (GTK_OBJECT (callback_data));
+
++ GDK_THREADS_LEAVE ();
++
+ return FALSE;
+ }
+
+@@ -202,7 +206,10 @@
+
+ wait = callback_data;
+
++ GDK_THREADS_ENTER ();
++
+ if (gnome_authentication_manager_dialog_is_visible ()) {
++ GDK_THREADS_LEAVE ();
+ return TRUE;
+ }
+
+@@ -249,6 +256,8 @@
+
+ wait->timeout_handler_id = 0;
+ wait->dialog = dialog;
++
++ GDK_THREADS_LEAVE ();
+
+ return FALSE;
+ }