From c40131f705a4dd2411e3e0a90e2f83a0f036013b Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Tue, 23 Sep 2008 02:31:44 +0000 Subject: [PATCH] add patch --- bad-filechooser.patch | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 bad-filechooser.patch diff --git a/bad-filechooser.patch b/bad-filechooser.patch new file mode 100644 index 0000000..a431d16 --- /dev/null +++ b/bad-filechooser.patch @@ -0,0 +1,41 @@ +Index: gtk/gtkfilechooserdefault.c +=================================================================== +--- gtk/gtkfilechooserdefault.c (revision 21491) ++++ gtk/gtkfilechooserdefault.c (working copy) +@@ -456,6 +456,7 @@ + GtkTreeIter *child_iter, + GtkTreeIter *iter); + static void set_file_system_backend (GtkFileChooserDefault *impl); ++static void unset_file_system_backend (GtkFileChooserDefault *impl); + + + +@@ -923,6 +924,8 @@ + GtkFileChooserDefault *impl = GTK_FILE_CHOOSER_DEFAULT (object); + GSList *l; + ++ unset_file_system_backend (impl); ++ + if (impl->shortcuts_pane_filter_model) + g_object_unref (impl->shortcuts_pane_filter_model); + +@@ -5373,6 +5376,19 @@ + profile_end ("end", NULL); + } + ++static void ++unset_file_system_backend (GtkFileChooserDefault *impl) ++{ ++ g_signal_disconnect_by_func (impl->file_system, "volumes-changed", ++ G_CALLBACK (volumes_bookmarks_changed_cb), impl); ++ g_signal_disconnect_by_func (impl->file_system, "bookmarks-changed", ++ G_CALLBACK (volumes_bookmarks_changed_cb), impl); ++ ++ g_object_unref (impl->file_system); ++ ++ impl->file_system = NULL; ++} ++ + /* This function is basically a do_all function. + * + * It sets the visibility on all the widgets based on the current state, and