summaryrefslogtreecommitdiffstats
path: root/libraries/libfm/patches/0021-Fix-over-previous-commit-it-leaded-to-crash.patch
diff options
context:
space:
mode:
Diffstat (limited to 'libraries/libfm/patches/0021-Fix-over-previous-commit-it-leaded-to-crash.patch')
-rw-r--r--libraries/libfm/patches/0021-Fix-over-previous-commit-it-leaded-to-crash.patch46
1 files changed, 46 insertions, 0 deletions
diff --git a/libraries/libfm/patches/0021-Fix-over-previous-commit-it-leaded-to-crash.patch b/libraries/libfm/patches/0021-Fix-over-previous-commit-it-leaded-to-crash.patch
new file mode 100644
index 0000000000..ba8a02fdca
--- /dev/null
+++ b/libraries/libfm/patches/0021-Fix-over-previous-commit-it-leaded-to-crash.patch
@@ -0,0 +1,46 @@
+From 01c1de235d7bdf702f8d1dfc99645b57afe3deec Mon Sep 17 00:00:00 2001
+From: Andriy Grytsenko <andrej@rep.kiev.ua>
+Date: Sat, 24 Nov 2012 19:34:44 +0200
+Subject: [PATCH 21/22] Fix over previous commit: it leaded to crash.
+
+The last fix was incorrect since it updated selection after the
+model was actually unset in FmStandardView but still in ExoIconView
+therefore it crashed in raised callbacks.
+The commit does it simpler by unselecting them all. That will
+still send a signal about reset selection but will not conflict.
+---
+ src/gtk/fm-folder-view.c | 3 +++
+ src/gtk/fm-standard-view.c | 3 ---
+ 2 files changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/src/gtk/fm-folder-view.c b/src/gtk/fm-folder-view.c
+index d7fa53e..240f0e3 100644
+--- a/src/gtk/fm-folder-view.c
++++ b/src/gtk/fm-folder-view.c
+@@ -624,6 +624,9 @@ void fm_folder_view_set_model(FmFolderView* fv, FmFolderModel* model)
+ {
+ fm_folder_model_get_sort(old_model, &by, &mode);
+ unset_model(fv, old_model);
++ /* https://bugs.launchpad.net/ubuntu/+source/pcmanfm/+bug/1071231:
++ after changing the folder selection isn't reset */
++ iface->unselect_all(fv);
+ }
+ /* FIXME: which setting to apply if this is first model? */
+ iface->set_model(fv, model);
+diff --git a/src/gtk/fm-standard-view.c b/src/gtk/fm-standard-view.c
+index 1ff55ae..175cced 100644
+--- a/src/gtk/fm-standard-view.c
++++ b/src/gtk/fm-standard-view.c
+@@ -275,9 +275,6 @@ static void unset_model(FmStandardView* fv)
+ /* g_debug("unset_model: %p, n_ref = %d", model, G_OBJECT(model)->ref_count); */
+ g_object_unref(model);
+ fv->model = NULL;
+- /* https://bugs.launchpad.net/ubuntu/+source/pcmanfm/+bug/1071231:
+- after changing the folder selection isn't reset */
+- on_sel_changed(NULL, fv);
+ }
+ }
+
+--
+1.8.0.1
+