diff options
author | Ray Strode <halfline@gnome.org> | 2007-12-02 23:54:24 +0000 |
---|---|---|
committer | Ray Strode <halfline@src.gnome.org> | 2007-12-02 23:54:24 +0000 |
commit | 667ca03003933deb0da6d5806ed64a9622fdd2c5 (patch) | |
tree | 22090d94315107af706b9361b9660629ca32ecaf | |
parent | 249796e59ace3c5b1739778d12a7eefb3ed1e2dc (diff) | |
download | gconf-667ca03003933deb0da6d5806ed64a9622fdd2c5.tar.gz |
Plug a few leaks found and fixed by Matthias Clasen (bug 475970)
2007-12-02 Ray Strode <halfline@gnome.org>
Plug a few leaks found and fixed by Matthias Clasen
(bug 475970)
* gconf/gconf-database.c (gconf_database_notify_listeners):
Clean up list of dead listeners
* backends/xml-cache.c (cache_sync): clean up temporary list
of syncs when we're done with it.
* backends/markup-tree.c (markup_dir_free): free markup dir's
list of entries before freeing the markup dir
svn path=/trunk/; revision=2497
-rw-r--r-- | ChangeLog | 14 | ||||
-rw-r--r-- | backends/markup-tree.c | 2 | ||||
-rw-r--r-- | backends/xml-cache.c | 1 | ||||
-rw-r--r-- | gconf/gconf-database.c | 2 |
4 files changed, 19 insertions, 0 deletions
@@ -1,3 +1,17 @@ +2007-12-02 Ray Strode <halfline@gnome.org> + + Plug a few leaks found and fixed by Matthias Clasen + (bug 475970) + + * gconf/gconf-database.c (gconf_database_notify_listeners): + Clean up list of dead listeners + + * backends/xml-cache.c (cache_sync): clean up temporary list + of syncs when we're done with it. + + * backends/markup-tree.c (markup_dir_free): free markup dir's + list of entries before freeing the markup dir + 2007-11-22 Kjartan Maraas <kmaraas@gnome.org> * gconf/gconf-internals.c (gconf_key_key): Add check diff --git a/backends/markup-tree.c b/backends/markup-tree.c index ac69c0c7..8b9542e8 100644 --- a/backends/markup-tree.c +++ b/backends/markup-tree.c @@ -263,6 +263,7 @@ markup_dir_free (MarkupDir *dir) tmp = tmp->next; } + g_slist_free (dir->entries); tmp = dir->subdirs; while (tmp) @@ -273,6 +274,7 @@ markup_dir_free (MarkupDir *dir) tmp = tmp->next; } + g_slist_free (dir->subdirs); g_free (dir->name); diff --git a/backends/xml-cache.c b/backends/xml-cache.c index 79c25507..4186628d 100644 --- a/backends/xml-cache.c +++ b/backends/xml-cache.c @@ -272,6 +272,7 @@ cache_sync (Cache *cache, /* sync it all */ g_slist_foreach (list, (GFunc) cache_sync_foreach, &sd); + g_slist_free (list); /* If we deleted some subdirs, we may now be able to delete * more parent dirs. So go ahead and do the sync again. diff --git a/gconf/gconf-database.c b/gconf/gconf-database.c index c4226a5a..822b88f5 100644 --- a/gconf/gconf-database.c +++ b/gconf/gconf-database.c @@ -1259,6 +1259,8 @@ gconf_database_notify_listeners (GConfDatabase *db, tmp = g_slist_next(tmp); } + g_slist_free (closure.dead); + if (notify_others) { g_return_if_fail (modified_sources != NULL); |