rpms/planner/devel planner-backport-libegg-fixes.patch, NONE, 1.1 planner.spec, 1.87, 1.88

Caolan McNamara caolanm at fedoraproject.org
Wed Jun 9 09:47:41 UTC 2010


Author: caolanm

Update of /cvs/pkgs/rpms/planner/devel
In directory cvs01.phx2.fedoraproject.org:/tmp/cvs-serv11797

Modified Files:
	planner.spec 
Added Files:
	planner-backport-libegg-fixes.patch 
Log Message:
fix up double unref

planner-backport-libegg-fixes.patch:
 python/plannerui.defs       |    2 +-
 src/planner-gantt-view.c    |    1 +
 src/planner-resource-view.c |    1 +
 src/planner-task-view.c     |    1 +
 src/planner-usage-view.c    |    1 +
 src/planner-window.c        |   27 +++++++++++----------------
 6 files changed, 16 insertions(+), 17 deletions(-)

--- NEW FILE planner-backport-libegg-fixes.patch ---
diff -ru planner-0.14.4.orig/python/plannerui.defs planner-0.14.4/python/plannerui.defs
--- planner-0.14.4.orig/python/plannerui.defs	2010-06-09 10:39:39.000000000 +0100
+++ planner-0.14.4/python/plannerui.defs	2010-06-09 10:39:56.000000000 +0100
@@ -30,7 +30,7 @@
 (define-method get_recent_model
   (of-object "PlannerApplication")
   (c-name "planner_application_get_recent_model")
-  (return-type "EggRecentModel*")
+  (return-type "GtkRecentManager*")
 )
 
 (define-function planner_application_get_gconf_client
diff -ru planner-0.14.4.orig/src/planner-gantt-view.c planner-0.14.4/src/planner-gantt-view.c
--- planner-0.14.4.orig/src/planner-gantt-view.c	2010-06-09 10:39:39.000000000 +0100
+++ planner-0.14.4/src/planner-gantt-view.c	2010-06-09 10:41:14.000000000 +0100
@@ -328,6 +328,7 @@
 	priv = PLANNER_GANTT_VIEW (view)->priv;
 	
 	gtk_ui_manager_remove_ui (priv->ui_manager, priv->merged_id);
+	gtk_ui_manager_remove_action_group (priv->ui_manager, priv->actions);
 }
 
 static void
diff -ru planner-0.14.4.orig/src/planner-resource-view.c planner-0.14.4/src/planner-resource-view.c
--- planner-0.14.4.orig/src/planner-resource-view.c	2010-06-09 10:39:39.000000000 +0100
+++ planner-0.14.4/src/planner-resource-view.c	2010-06-09 10:41:14.000000000 +0100
@@ -389,6 +389,7 @@
 	priv = PLANNER_RESOURCE_VIEW (view)->priv;
 
 	gtk_ui_manager_remove_ui (priv->ui_manager, priv->merged_id);
+	gtk_ui_manager_remove_action_group (priv->ui_manager, priv->actions);
 }
 
 static void
diff -ru planner-0.14.4.orig/src/planner-task-view.c planner-0.14.4/src/planner-task-view.c
--- planner-0.14.4.orig/src/planner-task-view.c	2010-06-09 10:39:39.000000000 +0100
+++ planner-0.14.4/src/planner-task-view.c	2010-06-09 10:41:14.000000000 +0100
@@ -253,6 +253,7 @@
 
 	priv = PLANNER_TASK_VIEW (view)->priv;
 	gtk_ui_manager_remove_ui (priv->ui_manager, priv->merged_id);
+	gtk_ui_manager_remove_action_group (priv->ui_manager, priv->actions);
 }
 
 static void
diff -ru planner-0.14.4.orig/src/planner-usage-view.c planner-0.14.4/src/planner-usage-view.c
--- planner-0.14.4.orig/src/planner-usage-view.c	2010-06-09 10:39:39.000000000 +0100
+++ planner-0.14.4/src/planner-usage-view.c	2010-06-09 10:41:14.000000000 +0100
@@ -211,6 +211,7 @@
 
 	priv = PLANNER_USAGE_VIEW (view)->priv;
 	gtk_ui_manager_remove_ui (priv->ui_manager, priv->merged_id);
+	gtk_ui_manager_remove_action_group (priv->ui_manager, priv->actions);
 }
 
 static void
diff -ru planner-0.14.4.orig/src/planner-window.c planner-0.14.4/src/planner-window.c
--- planner-0.14.4.orig/src/planner-window.c	2010-06-09 10:39:39.000000000 +0100
+++ planner-0.14.4/src/planner-window.c	2010-06-09 10:42:32.000000000 +0100
@@ -75,8 +75,6 @@
 	GList               *views;
 	GList               *plugins;
 	GTimer              *last_saved;
-
-	GtkWidget           *recent_view;
 };
 
 /* Drop targets. */
@@ -409,10 +407,6 @@
 		g_object_unref (priv->cmd_manager);
 	}
 
-	if (priv->recent_view) {
-		g_object_unref (priv->recent_view);
-	}
-
 	if (priv->ui_manager) {
 		g_object_unref (priv->ui_manager);
 	}
@@ -542,6 +536,9 @@
 	GtkWidget            *hbox;
 	GList                *l;
 	GtkWidget            *view_widget;
+	GtkWidget            *recent_view;
+	GtkRecentFilter      *filter;
+	GtkWidget            *open_recent;
 	PlannerView          *view;
 	gint                  view_num;
 	GtkRadioActionEntry  *r_entries;
@@ -611,29 +608,27 @@
 		      NULL);
 
 	/* Handle recent file stuff. */
-	priv->recent_view = gtk_recent_chooser_menu_new_for_manager (
+	recent_view = gtk_recent_chooser_menu_new_for_manager (
 		planner_application_get_recent_model (priv->application));
 
-	GtkRecentFilter *filter;
 	filter = gtk_recent_filter_new ();
 	gtk_recent_filter_add_mime_type (filter, "application/x-planner");
 	gtk_recent_filter_add_mime_type (filter, "application/x-mrproject");
 	gtk_recent_filter_add_group (filter, "planner");
-	gtk_recent_chooser_set_filter (GTK_RECENT_CHOOSER (priv->recent_view), filter);
+	gtk_recent_chooser_set_filter (GTK_RECENT_CHOOSER (recent_view), filter);
 
-	g_signal_connect (priv->recent_view,
+	g_signal_connect (recent_view,
 			  "item_activated",
 			  G_CALLBACK (recent_chooser_item_activated),
 			  window);
 
-	gtk_recent_chooser_set_sort_type (GTK_RECENT_CHOOSER (priv->recent_view), GTK_RECENT_SORT_MRU);
-	gtk_recent_chooser_set_local_only (GTK_RECENT_CHOOSER (priv->recent_view), TRUE);
-	gtk_recent_chooser_set_limit (GTK_RECENT_CHOOSER (priv->recent_view), 5);
-	gtk_recent_chooser_menu_set_show_numbers (GTK_RECENT_CHOOSER_MENU (priv->recent_view), TRUE);
+	gtk_recent_chooser_set_sort_type (GTK_RECENT_CHOOSER (recent_view), GTK_RECENT_SORT_MRU);
+	gtk_recent_chooser_set_local_only (GTK_RECENT_CHOOSER (recent_view), TRUE);
+	gtk_recent_chooser_set_limit (GTK_RECENT_CHOOSER (recent_view), 5);
+	gtk_recent_chooser_menu_set_show_numbers (GTK_RECENT_CHOOSER_MENU (recent_view), TRUE);
 
-	GtkWidget *open_recent;
 	open_recent = gtk_ui_manager_get_widget (priv->ui_manager, "/MenuBar/File/FileOpenRecent");
-	gtk_menu_item_set_submenu (GTK_MENU_ITEM (open_recent), priv->recent_view);
+	gtk_menu_item_set_submenu (GTK_MENU_ITEM (open_recent), recent_view);
 
 	hbox = gtk_hbox_new (FALSE, 0);
 


Index: planner.spec
===================================================================
RCS file: /cvs/pkgs/rpms/planner/devel/planner.spec,v
retrieving revision 1.87
retrieving revision 1.88
diff -u -p -r1.87 -r1.88
--- planner.spec	8 Jun 2010 12:08:05 -0000	1.87
+++ planner.spec	9 Jun 2010 09:47:41 -0000	1.88
@@ -7,7 +7,7 @@
 Summary:   A graphical project management tool
 Name:      planner
 Version:   0.14.4
-Release:   22%{?dist}
+Release:   23%{?dist}
 License:   GPLv2+
 Group:     Applications/Productivity
 URL:       http://live.gnome.org/Planner
@@ -41,6 +41,7 @@ Patch11: planner-gnome581282-printprevie
 Patch12: planner-gnome606824-notecolumn.patch
 Patch13: planner-gnome341504-paste.tasks.patch
 Patch14: planner-gnome615641-multiselect.patch
+Patch15: planner-backport-libegg-fixes.patch
 
 %description
 Planner is a visual project management application which allows users to
@@ -85,6 +86,7 @@ This package provides a plugin to integr
 %patch12 -p1 -b .notecolumn
 %patch13 -p1 -b .copypaste
 %patch14 -p1 -b .multiselect
+%patch15 -p1 -b .libeggfixes
 
 %build
 rm -rf libegg
@@ -189,6 +191,9 @@ rm -rf $RPM_BUILD_ROOT
 %{_libdir}/pkgconfig/*
 
 %changelog
+* Wed Jul 09 2010 Caolán McNamara <caolanm at redhat.com> - 0.14.4-23
+- backport fix for double unref of recently-used
+
 * Tue Jun 08 2010 Caolán McNamara <caolanm at redhat.com> - 0.14.4-22
 - rebuild for dependencies
 



More information about the scm-commits mailing list