rrichards Fri Jun 20 10:07:51 2003 EDT Modified files: /php4/ext/xsl php_xsl.c Log: fix mem leak remove unused code Index: php4/ext/xsl/php_xsl.c diff -u php4/ext/xsl/php_xsl.c:1.4 php4/ext/xsl/php_xsl.c:1.5 --- php4/ext/xsl/php_xsl.c:1.4 Tue Jun 10 16:03:40 2003 +++ php4/ext/xsl/php_xsl.c Fri Jun 20 10:07:51 2003 @@ -16,7 +16,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: php_xsl.c,v 1.4 2003/06/10 20:03:40 imajes Exp $ */ +/* $Id: php_xsl.c,v 1.5 2003/06/20 14:07:51 rrichards Exp $ */ #ifdef HAVE_CONFIG_H #include "config.h" @@ -32,13 +32,7 @@ ZEND_DECLARE_MODULE_GLOBALS(xsl) */ -/* True global resources - no need for thread safety here */ - -static HashTable classes; -/* not used right now static zend_object_handlers xsl_object_handlers; -static HashTable xsl_xsltprocessor_prop_handlers; -*/ /* {{{ xsl_functions[] * @@ -73,22 +67,13 @@ ZEND_GET_MODULE(xsl) #endif +/* {{{ xsl_objects_clone */ +void xsl_objects_clone(void *object, void **object_clone TSRMLS_DC) +{ + /* TODO */ +} +/* }}} */ -/************ -* copied from php_dom .... should be in a common file... -**********/ - - -typedef int (*dom_read_t)(xsl_object *obj, zval **retval TSRMLS_DC); -typedef int (*dom_write_t)(xsl_object *obj, zval *newval TSRMLS_DC); - -typedef struct _dom_prop_handler { - dom_read_t read_func; - dom_write_t write_func; -} dom_prop_handler; - -/* end copied from php_dom.c */ - /* {{{ xsl_objects_dtor */ void xsl_objects_dtor(void *object, zend_object_handle handle TSRMLS_DC) { @@ -119,7 +104,6 @@ { zend_object_value retval; xsl_object *intern; - zend_class_entry *base_class; zval *tmp; intern = emalloc(sizeof(xsl_object)); @@ -130,22 +114,15 @@ intern->prop_handler = NULL; intern->parameter = NULL; intern->document = NULL; - - base_class = class_type; - while(base_class->type != ZEND_INTERNAL_CLASS && base_class->parent != NULL) { - base_class = base_class->parent; - } - - zend_hash_find(&classes, base_class->name , base_class->name_length + 1, &intern->prop_handler); ALLOC_HASHTABLE(intern->std.properties); zend_hash_init(intern->std.properties, 0, NULL, ZVAL_PTR_DTOR, 0); zend_hash_copy(intern->std.properties, &class_type->default_properties, (copy_ctor_func_t) zval_add_ref, (void *) &tmp, sizeof(zval *)); ALLOC_HASHTABLE(intern->parameter); zend_hash_init(intern->parameter, 0, NULL, ZVAL_PTR_DTOR, 0); - retval.handle = zend_objects_store_put(intern, xsl_objects_dtor, dom_objects_clone TSRMLS_CC); + retval.handle = zend_objects_store_put(intern, xsl_objects_dtor, xsl_objects_clone TSRMLS_CC); intern->handle = retval.handle; - retval.handlers = &dom_object_handlers; + retval.handlers = &xsl_object_handlers; return retval; } /* }}} */ @@ -156,11 +133,8 @@ { zend_class_entry ce; - zend_hash_init(&classes, 0, NULL, NULL, 1); - memcpy(&dom_object_handlers, zend_get_std_object_handlers(), sizeof(zend_object_handlers)); - dom_object_handlers.read_property = dom_read_property; - dom_object_handlers.write_property = dom_write_property; + memcpy(&xsl_object_handlers, zend_get_std_object_handlers(), sizeof(zend_object_handlers)); REGISTER_XSL_CLASS(ce, "xsltprocessor", NULL, php_xsl_xsltprocessor_class_functions, xsl_xsltprocessor_class_entry); return SUCCESS;
-- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php