com gtk/php-gtk: Fix a few memory leaks by implementing a get_property_ptr_ptr handler that cleverly fails when necessary.: main/php_gtk.c main/php_gtk .h

[email protected] (David Soria Parra) Tue, 01 Nov 2005 08:31:19 +0000
Newsgroups php.gtk.cvs
Message-ID <[email protected]>
Commit:    23bb4285237da815911598ab9b28fe49a7d0cfbd
Author:    Andrei Zmievski <[email protected]>         Tue, 1 Nov 2005 08:31:19 +0000
Parents:   3a5e6e6e78f470c580787073349d836ed19b7345
Branches:  master

Link:       http://git.php.net/?p=gtk/php-gtk.git;a=commitdiff;h=23bb4285237da815911598ab9b28fe49a7d0cfbd

Log:
Fix a few memory leaks by implementing a get_property_ptr_ptr handler
that cleverly fails when necessary.

Changed paths:
  M  main/php_gtk.c
  M  main/php_gtk.h


Diff:
23bb4285237da815911598ab9b28fe49a7d0cfbd
diff --git a/main/php_gtk.c b/main/php_gtk.c
index d839176..5249950 100644
--- a/main/php_gtk.c
+++ b/main/php_gtk.c
@@ -183,7 +183,7 @@ PHP_RINIT_FUNCTION(gtk)
 	php_gtk_handlers.read_property  = phpg_read_property;
 	php_gtk_handlers.write_property = phpg_write_property;
 	php_gtk_handlers.get_properties = phpg_get_properties;
-	php_gtk_handlers.get_property_ptr_ptr = NULL;
+	php_gtk_handlers.get_property_ptr_ptr = phpg_get_property_ptr_ptr;
 
 	phpg_register_exceptions();
 
diff --git a/main/php_gtk.h b/main/php_gtk.h
index 31faf69..3625b1b 100644
--- a/main/php_gtk.h
+++ b/main/php_gtk.h
@@ -234,6 +234,7 @@ int php_gtk_startup_extensions(php_gtk_ext_entry **ext, int ext_count, int modul
 
 zval *phpg_read_property(zval *object, zval *member, int type TSRMLS_DC);
 void phpg_write_property(zval *object, zval *member, zval *value TSRMLS_DC);
+zval **phpg_get_property_ptr_ptr(zval *object, zval *member TSRMLS_DC);
 HashTable* phpg_get_properties(zval *object TSRMLS_DC);
 PHP_GTK_API void phpg_get_properties_helper(zval *object, HashTable *ht TSRMLS_DC, ...);