Re: [evolution-patches] leaks in alarm daemon (1.4)



On Mon, 2003-12-22 at 17:15, Rodrigo Moya wrote:
> The attached patch fixes some of the session problems in the alarm
> daemon. There is still 1 leak (or maybe more) that is preventing wombat,
> and b-a-s to exit when the session ends. I think this can be caused by
> some leaked clients in the calendar GUI, so I'd thought to send it in a
> separate patch (once I find it).
> 
> This at least makes the alarm daemon exits with the session, and fixes
> the crashes on session startup (reported many times to bugzilla). So, I
> guess this should go in.
> 
this also needs the attached patch for wombat/

cheers
Index: ChangeLog
===================================================================
RCS file: /cvs/gnome/evolution/wombat/Attic/ChangeLog,v
retrieving revision 1.85.4.1
diff -u -p -r1.85.4.1 ChangeLog
--- ChangeLog	10 Sep 2003 21:39:51 -0000	1.85.4.1
+++ ChangeLog	22 Dec 2003 16:22:24 -0000
@@ -1,3 +1,9 @@
+2003-12-18  Rodrigo Moya <rodrigo ximian com>
+
+	* wombat.c (setup_interface_check): made the BonoboObject not private
+	to this function only.
+	(main): unref the interface check object also.
+
 2003-09-09  egallego telefonica net
 
 	Fixes #46130
Index: wombat.c
===================================================================
RCS file: /cvs/gnome/evolution/wombat/Attic/wombat.c,v
retrieving revision 1.42
diff -u -p -r1.42 wombat.c
--- wombat.c	28 Mar 2003 21:41:44 -0000	1.42
+++ wombat.c	22 Dec 2003 16:22:24 -0000
@@ -48,6 +48,9 @@ static CalFactory *cal_factory;
 
 static PASBookFactory *pas_book_factory;
 
+/* The extra interfaces we implement */
+static WombatInterfaceCheck *interface_check_iface;
+
 /* Timeout interval in milliseconds for termination */
 #define EXIT_TIMEOUT 5000
 
@@ -166,9 +169,9 @@ setup_pcs (void)
 static gboolean
 setup_interface_check (void)
 {
-	WombatInterfaceCheck *interface_check_iface = wombat_interface_check_new ();
 	int result;
 
+	interface_check_iface = wombat_interface_check_new ();
 	result = bonobo_activation_active_server_register ("OAFIID:GNOME_Evolution_Wombat_InterfaceCheck",
 							   BONOBO_OBJREF (interface_check_iface));
 
@@ -236,6 +239,7 @@ main (int argc, char **argv)
 	}
 
 	if (! setup_interface_check ()) {
+		bonobo_object_unref (interface_check_iface);
 		g_message ("Cannot register Wombat::InterfaceCheck object");
 		exit (EXIT_FAILURE);
 	}
@@ -250,6 +254,9 @@ main (int argc, char **argv)
 	bonobo_object_unref (BONOBO_OBJECT (pas_book_factory));
 	pas_book_factory = NULL;
 
+	bonobo_object_unref (BONOBO_OBJECT (interface_check_iface));
+	interface_check_iface = NULL;
+
 	gnome_vfs_shutdown ();
 
 	return 0;


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]