com gtk/php-gtk: Kill a few leaks.: ext/libglade/libglade.overrides
[email protected] (David Soria Parra) Wed, 02 Nov 2005 20:12:55 +0000
| Newsgroups | php.gtk.cvs |
|---|---|
| Message-ID | <[email protected]> |
Commit: 87c4c4116075d6b7b7089fc8325201a4128d7d19 Author: Steph Fox <[email protected]> Wed, 2 Nov 2005 20:12:55 +0000 Parents: 3c32b6d651ab080d17d8ee6d45b829223cda6026 Branches: master Link: http://git.php.net/?p=gtk/php-gtk.git;a=commitdiff;h=87c4c4116075d6b7b7089fc8325201a4128d7d19 Log: Kill a few leaks. Changed paths: M ext/libglade/libglade.overrides Diff: 87c4c4116075d6b7b7089fc8325201a4128d7d19 diff --git a/ext/libglade/libglade.overrides b/ext/libglade/libglade.overrides index a2c0178..2c4df0c 100644 --- a/ext/libglade/libglade.overrides +++ b/ext/libglade/libglade.overrides @@ -135,6 +135,7 @@ static void glade_signal_marshal(const gchar *handler_name, GObject *object, handler_id = g_signal_connect_closure(object, signal_name, closure, after); efree(callback_name); + efree(php_object); } PHP_METHOD(glade_xml_signal_connect) @@ -156,6 +157,7 @@ PHP_METHOD(glade_xml_signal_connect) (GladeXMLConnectFunc)glade_signal_marshal, data); if (free_handlername) g_free(handlername); + phpg_cb_data_destroy(data); RETURN_NULL(); } @@ -190,7 +192,7 @@ static void glade_auto_signal_marshal(const gchar *handler_name, GObject *object efree(php_class); } else { - ZVAL_STRING(callback, (char *)handler_name, 1); + ZVAL_STRING(callback, (char *)handler_name, 0); } if (!zend_is_callable(callback, 0, NULL)) { @@ -215,6 +217,8 @@ static void glade_auto_signal_marshal(const gchar *handler_name, GObject *object phpg_gobject_new(&php_object, (GObject*)object TSRMLS_CC); phpg_gobject_watch_closure(php_object, closure TSRMLS_CC); handler_id = g_signal_connect_closure(object, signal_name, closure, after); + + efree(php_object); } PHP_METHOD(glade_xml_signal_autoconnect)