[maemo-commits] [maemo-commits] r14756 - in projects/haf/trunk/gconf2: . debian gconf

From: subversion at stage.maemo.org subversion at stage.maemo.org
Date: Sat Nov 10 10:20:07 EET 2007
Author: richard
Date: 2007-11-10 10:20:00 +0200 (Sat, 10 Nov 2007)
New Revision: 14756

Modified:
   projects/haf/trunk/gconf2/ChangeLog
   projects/haf/trunk/gconf2/debian/changelog
   projects/haf/trunk/gconf2/gconf/gconf-dbus.c
Log:
NB#70845

Modified: projects/haf/trunk/gconf2/ChangeLog
===================================================================
--- projects/haf/trunk/gconf2/ChangeLog	2007-11-09 14:50:56 UTC (rev 14755)
+++ projects/haf/trunk/gconf2/ChangeLog	2007-11-10 08:20:00 UTC (rev 14756)
@@ -1,3 +1,11 @@
+2007-11-10  Richard Hult  <richard at imendio.com>
+
+	* gconf/gconf-dbus.c: (gconf_handle_dbus_exception),
+	(gconf_engine_all_entries), (gconf_engine_all_dirs),
+	(gconf_engine_suggest_sync), (gconf_engine_dir_exists): Plug
+	leaks, NB#70845 (also do some s/bool/pointer/ in
+	g_return_val_if_fail macros).
+
 2007-06-27  Richard Hult  <richard at imendio.com>
 
 	* gconf/gconf-database-dbus.c: (database_message_func),

Modified: projects/haf/trunk/gconf2/debian/changelog
===================================================================
--- projects/haf/trunk/gconf2/debian/changelog	2007-11-09 14:50:56 UTC (rev 14755)
+++ projects/haf/trunk/gconf2/debian/changelog	2007-11-10 08:20:00 UTC (rev 14756)
@@ -1,3 +1,9 @@
+gconf2 (2.16.0-1osso9) unstable; urgency=low
+
+  * Fixes: NB#70845, Leak in GConf client side library
+
+ -- Richard Hult <richard at imendio.com>  Sat, 10 Nov 2007 09:17:24 +0100
+
 gconf2 (2.16.0-1osso8) unstable; urgency=low
 
   * Fixes: NB#61975, would be nice to enable floating point in gconf

Modified: projects/haf/trunk/gconf2/gconf/gconf-dbus.c
===================================================================
--- projects/haf/trunk/gconf2/gconf/gconf-dbus.c	2007-11-09 14:50:56 UTC (rev 14755)
+++ projects/haf/trunk/gconf2/gconf/gconf-dbus.c	2007-11-10 08:20:00 UTC (rev 14756)
@@ -231,9 +231,12 @@
       return TRUE;
     }
     
- if (dbus_message_get_type (message) != DBUS_MESSAGE_TYPE_ERROR)
+  if (dbus_message_get_type (message) != DBUS_MESSAGE_TYPE_ERROR)
     return FALSE;
 
+  if (derr)
+    dbus_error_free (derr);
+
   name = dbus_message_get_member (message);
 
   dbus_message_get_args (message, NULL,
@@ -1824,9 +1827,9 @@
   dbus_message_unref (message);
   
   if (gconf_handle_dbus_exception (reply, &error, err))
-    return FALSE;
+    return NULL;
   
-  g_return_val_if_fail (err == NULL || *err == NULL, FALSE);
+  g_return_val_if_fail (err == NULL || *err == NULL, NULL);
 
   dbus_message_iter_init (reply, &iter);
   
@@ -1927,9 +1930,9 @@
   dbus_message_unref (message);
   
   if (gconf_handle_dbus_exception (reply, &error, err))
-    return FALSE;
+    return NULL;
 
-  g_return_val_if_fail (err == NULL || *err == NULL, FALSE);
+  g_return_val_if_fail (err == NULL || *err == NULL, NULL);
 
   dbus_message_iter_init (reply, &iter);
 
@@ -2006,7 +2009,8 @@
   reply = dbus_connection_send_with_reply_and_block (global_conn, message, -1, &error);
   dbus_message_unref (message);
 
-  gconf_handle_dbus_exception (reply, &error, err);
+  if (!gconf_handle_dbus_exception (reply, &error, err))
+    dbus_message_unref (reply);
 }
 
 void 
@@ -2125,8 +2129,9 @@
 
   g_return_val_if_fail (err == NULL || *err == NULL, FALSE);
 
+  exists = FALSE;
   dbus_message_get_args (reply,
-			 &error,
+			 NULL,
 			 DBUS_TYPE_BOOLEAN, &exists,
 			 DBUS_TYPE_INVALID);
 


More information about the maemo-commits mailing list