diff options
Diffstat (limited to 'ext/com')
| -rw-r--r-- | ext/com/COM.c | 3 | ||||
| -rw-r--r-- | ext/com/VARIANT.c | 4 |
2 files changed, 4 insertions, 3 deletions
diff --git a/ext/com/COM.c b/ext/com/COM.c index a9d18cec9f..cb60f4d2a8 100644 --- a/ext/com/COM.c +++ b/ext/com/COM.c @@ -335,9 +335,10 @@ static char *php_string_from_clsid(const CLSID *clsid) return clsid_str; } -static void php_comval_destructor(zend_rsrc_list_entry *rsrc) +static void php_comval_destructor(zend_rsrc_list_entry *rsrc TSRMLS_DC) { comval *obj = (comval *)rsrc->ptr; + if(C_ISREFD(obj)) { C_REFCOUNT(obj) = 1; diff --git a/ext/com/VARIANT.c b/ext/com/VARIANT.c index af435bacbd..8f9ebd0e2d 100644 --- a/ext/com/VARIANT.c +++ b/ext/com/VARIANT.c @@ -42,7 +42,7 @@ void php_VARIANT_call_function_handler(INTERNAL_FUNCTION_PARAMETERS, zend_proper pval php_VARIANT_get_property_handler(zend_property_reference *property_reference); static int do_VARIANT_propset(VARIANT *var_arg, pval *arg_property, pval *value); void php_register_VARIANT_class(); -static void php_variant_destructor(zend_rsrc_list_entry *rsrc); +static void php_variant_destructor(zend_rsrc_list_entry *rsrc TSRMLS_DC); void php_register_VARIANT_class(); static int le_variant; @@ -423,7 +423,7 @@ static int do_VARIANT_propset(VARIANT *var_arg, pval *arg_property, pval *value) return SUCCESS; } -static void php_variant_destructor(zend_rsrc_list_entry *rsrc) +static void php_variant_destructor(zend_rsrc_list_entry *rsrc TSRMLS_DC) { efree(rsrc); } |
