summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app-text/gtranslator/files/gtranslator-2.91.5-gdl-3.6-3.patch')
-rw-r--r--app-text/gtranslator/files/gtranslator-2.91.5-gdl-3.6-3.patch55
1 files changed, 55 insertions, 0 deletions
diff --git a/app-text/gtranslator/files/gtranslator-2.91.5-gdl-3.6-3.patch b/app-text/gtranslator/files/gtranslator-2.91.5-gdl-3.6-3.patch
new file mode 100644
index 000000000000..15b4d750c50d
--- /dev/null
+++ b/app-text/gtranslator/files/gtranslator-2.91.5-gdl-3.6-3.patch
@@ -0,0 +1,55 @@
+From 398ebe3e8b5271261423d60849452423bf0dfb51 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?S=C3=A9bastien=20Granjoux?= <seb.sfo@free.fr>
+Date: Tue, 20 Nov 2012 21:57:53 +0100
+Subject: [PATCH 3/3] Another fix for bgo#680399 - gtranslator 2.91.5
+ segfaults trying to use any plugin (gnome 3.5.x stack)
+
+Keep saving the layout on each change but connect the signal after loading the
+layout and disconnect it after saving it for the last time.
+---
+ src/gtr-tab.c | 15 +++++++++++++++
+ 1 file changed, 15 insertions(+)
+
+diff --git a/src/gtr-tab.c b/src/gtr-tab.c
+index 4c7760a..2ebf60b 100644
+--- a/src/gtr-tab.c
++++ b/src/gtr-tab.c
+@@ -671,6 +671,13 @@ save_layout (GtrTab *tab)
+ }
+
+ static void
++on_layout_changed (GdlDockMaster *master,
++ GtrTab *tab)
++{
++ save_layout (tab);
++}
++
++static void
+ extension_added (PeasExtensionSet *extensions,
+ PeasPluginInfo *info,
+ PeasExtension *exten,
+@@ -882,6 +889,9 @@ gtr_tab_dispose (GObject * object)
+
+ if (!priv->dispose_has_run)
+ {
++ g_signal_handlers_disconnect_by_func (gdl_dock_layout_get_master (priv->layout_manager),
++ G_CALLBACK (on_layout_changed),
++ object);
+ save_layout (GTR_TAB (object));
+ priv->dispose_has_run = TRUE;
+ }
+@@ -962,6 +972,11 @@ gtr_tab_realize (GtkWidget *widget)
+ g_free (filename);
+
+ tab->priv->tab_realized = TRUE;
++
++ g_signal_connect (gdl_dock_layout_get_master (tab->priv->layout_manager),
++ "layout-changed",
++ G_CALLBACK (on_layout_changed),
++ tab);
+ }
+ }
+
+--
+1.8.0
+