diff options
author | Andrew Potter <agpotter@gmail.com> | 2012-11-19 10:33:40 -0600 |
---|---|---|
committer | Mike Gorse <mgorse@suse.com> | 2012-11-19 10:33:40 -0600 |
commit | a9691925d9a5e2eb32009de2cc6bfa4b9f168945 (patch) | |
tree | 5c67feae0a65a7c8b628e841b6cf09f907fb2b2b /droute/droute.c | |
parent | 0565497849a5f3a0de34670f5229f33d9417f115 (diff) | |
download | at-spi2-core-a9691925d9a5e2eb32009de2cc6bfa4b9f168945.tar.gz |
droute: Fix memory leak in path cleanup
Frees all allocated memory.
g_ptr_array_free(..., FALSE) was probably being called to avoid a destructor being called on the elements of the array that point to static data. But that method returns an array that must still be g_free()d.
https://bugzilla.gnome.org/show_bug.cgi?id=688363
Diffstat (limited to 'droute/droute.c')
-rw-r--r-- | droute/droute.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/droute/droute.c b/droute/droute.c index f1ff993f..0a0bfd6b 100644 --- a/droute/droute.c +++ b/droute/droute.c @@ -107,7 +107,7 @@ path_new (DRouteContext *cnx, new_path->properties = g_hash_table_new_full ((GHashFunc)str_pair_hash, str_pair_equal, g_free, - NULL); + g_free); new_path->introspect_children_cb = introspect_children_cb; new_path->introspect_children_data = introspect_children_data; @@ -123,7 +123,7 @@ path_free (DRoutePath *path, gpointer user_data) g_free (path->path); g_string_chunk_free (path->chunks); g_ptr_array_free (path->interfaces, TRUE); - g_ptr_array_free (path->introspection, FALSE); + g_free(g_ptr_array_free (path->introspection, FALSE)); g_hash_table_destroy (path->methods); g_hash_table_destroy (path->properties); } |