Blame libgnomeui-2.16.0-filechooser-destroy-deadlock.patch
|
|
92c9a62 |
--- libgnomeui-2.16.0/file-chooser/gtkfilesystemgnomevfs.c.destroy-deadlock 2006-09-04 10:10:02.000000000 -0400
|
|
|
92c9a62 |
+++ libgnomeui-2.16.0/file-chooser/gtkfilesystemgnomevfs.c 2006-09-11 23:18:06.000000000 -0400
|
|
|
92c9a62 |
@@ -367,6 +367,7 @@
|
|
|
92c9a62 |
gpointer user_data);
|
|
|
92c9a62 |
|
|
|
92c9a62 |
static gboolean execute_vfs_callbacks_idle (gpointer data);
|
|
|
92c9a62 |
+static void execute_vfs_callbacks (gpointer data);
|
|
|
92c9a62 |
|
|
|
92c9a62 |
static gchar *make_child_uri (const gchar *base_uri,
|
|
|
92c9a62 |
const gchar *child_name,
|
|
|
92c9a62 |
@@ -612,7 +613,7 @@
|
|
|
92c9a62 |
system_vfs->execute_vfs_callbacks_idle_id = 0;
|
|
|
92c9a62 |
|
|
|
92c9a62 |
/* call pending callbacks */
|
|
|
92c9a62 |
- execute_vfs_callbacks_idle (system_vfs);
|
|
|
92c9a62 |
+ execute_vfs_callbacks (system_vfs);
|
|
|
92c9a62 |
}
|
|
|
92c9a62 |
|
|
|
92c9a62 |
/* cancel pending VFS operations */
|
|
|
92c9a62 |
@@ -3538,15 +3539,13 @@
|
|
|
92c9a62 |
}
|
|
|
92c9a62 |
|
|
|
92c9a62 |
/* some code for making callback calls from idle */
|
|
|
92c9a62 |
-static gboolean
|
|
|
92c9a62 |
-execute_vfs_callbacks_idle (gpointer data)
|
|
|
92c9a62 |
+static void
|
|
|
92c9a62 |
+execute_vfs_callbacks (gpointer data)
|
|
|
92c9a62 |
{
|
|
|
92c9a62 |
GSList *l;
|
|
|
92c9a62 |
gboolean unref_file_system = TRUE;
|
|
|
92c9a62 |
GtkFileSystemGnomeVFS *system_vfs = GTK_FILE_SYSTEM_GNOME_VFS (data);
|
|
|
92c9a62 |
|
|
|
92c9a62 |
- GDK_THREADS_ENTER ();
|
|
|
92c9a62 |
-
|
|
|
92c9a62 |
if (!system_vfs->execute_vfs_callbacks_idle_id)
|
|
|
92c9a62 |
unref_file_system = FALSE;
|
|
|
92c9a62 |
else
|
|
|
92c9a62 |
@@ -3568,6 +3567,14 @@
|
|
|
92c9a62 |
g_object_unref (system_vfs);
|
|
|
92c9a62 |
|
|
|
92c9a62 |
system_vfs->execute_vfs_callbacks_idle_id = 0;
|
|
|
92c9a62 |
+}
|
|
|
92c9a62 |
+
|
|
|
92c9a62 |
+static gboolean
|
|
|
92c9a62 |
+execute_vfs_callbacks_idle (gpointer data)
|
|
|
92c9a62 |
+{
|
|
|
92c9a62 |
+ GDK_THREADS_ENTER ();
|
|
|
92c9a62 |
+
|
|
|
92c9a62 |
+ execute_vfs_callbacks (data);
|
|
|
92c9a62 |
|
|
|
92c9a62 |
GDK_THREADS_LEAVE ();
|
|
|
92c9a62 |
|