Fixed bug #540152
authorJulien Puydt <jpuydt@src.gnome.org>
Thu, 26 Jun 2008 12:54:07 +0000 (12:54 +0000)
committerJulien Puydt <jpuydt@src.gnome.org>
Thu, 26 Jun 2008 12:54:07 +0000 (12:54 +0000)
svn path=/trunk/; revision=9056

ChangeLog
libedataserver/e-source-group.c

index d1c2245..81b2662 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2008-06-26  Julien Puydt  <jpuydt@gnome.org>
+
+       * libedataserver/e-source-group.c: Added missing g_object_unref on
+       sources, fixing leaks and bug #540152.
+
 2008-06-23  Jeffrey Stedfast  <fejj@novell.com>
 
        * configure.in: Doltify
index 2ccf594..8bb59f5 100644 (file)
@@ -316,6 +316,7 @@ e_source_group_new_from_xmldoc (xmlDocPtr doc)
                        goto done;
                }
                e_source_group_add_source (new, new_source, -1);
+               g_object_unref (new_source);
        }
 
        e_source_group_set_readonly (new, readonly_str && !strcmp (GC readonly_str, "yes"));
@@ -713,6 +714,7 @@ e_source_group_remove_source (ESourceGroup *group,
                                                              group);
                        g_signal_emit (group, signals[SOURCE_REMOVED], 0, source);
                        g_signal_emit (group, signals[CHANGED], 0);
+                       g_object_unref (source);
                        return TRUE;
                }
        }
@@ -742,6 +744,7 @@ e_source_group_remove_source_by_uid (ESourceGroup *group,
                                                              group);
                        g_signal_emit (group, signals[SOURCE_REMOVED], 0, source);
                        g_signal_emit (group, signals[CHANGED], 0);
+                       g_object_unref (source);
                        return TRUE;
                }
        }