summaryrefslogtreecommitdiff
path: root/gladeui/glade-widget.c
diff options
context:
space:
mode:
authorTristan Van Berkom <tristan.van.berkom@gmail.com>2011-01-16 22:54:15 +0900
committerTristan Van Berkom <tristan.van.berkom@gmail.com>2011-01-16 22:54:15 +0900
commite9a127ca2cf6849646580748dabbbe726863701b (patch)
treea0585918135c27637de7c6706a82ead99cb78535 /gladeui/glade-widget.c
parentb48218e0010bfcb66286b12d7f5b1740722a5029 (diff)
downloadglade-e9a127ca2cf6849646580748dabbbe726863701b.tar.gz
* gladeui/glade-project.c, gladeui/glade-property-class.c, gladeui/glade-widget-adaptor.c,
gladeui/glade-widget.c, plugins/gtk+/glade-gtk.c, plugins/gtk+/glade-model-data.c: Plugged more leaks found with valgrind.
Diffstat (limited to 'gladeui/glade-widget.c')
-rw-r--r--gladeui/glade-widget.c11
1 files changed, 3 insertions, 8 deletions
diff --git a/gladeui/glade-widget.c b/gladeui/glade-widget.c
index ce30b0d4..fc34fa5c 100644
--- a/gladeui/glade-widget.c
+++ b/gladeui/glade-widget.c
@@ -324,7 +324,7 @@ glade_widget_add_signal_handler (GladeWidget *widget, const GladeSignal *signal_
signals = glade_widget_list_signal_handlers (widget, glade_signal_get_name (signal_handler));
if (!signals)
{
- signals = g_ptr_array_new ();
+ signals = g_ptr_array_new_with_free_func ((GDestroyNotify) g_object_unref);
g_hash_table_insert (widget->priv->signals,
g_strdup (glade_signal_get_name (signal_handler)),
signals);
@@ -1149,14 +1149,9 @@ glade_widget_get_real_property (GObject * object,
}
static void
-free_signals (gpointer value)
+free_signals (GPtrArray *signals)
{
- GPtrArray *signals = (GPtrArray *) value;
-
- if (signals == NULL)
- return;
-
- g_ptr_array_foreach (signals, (GFunc) g_object_unref, NULL);
+ g_assert (signals);
g_ptr_array_free (signals, TRUE);
}