diff options
author | Andrei Zmievski <andrei@php.net> | 2000-06-17 15:53:33 +0000 |
---|---|---|
committer | Andrei Zmievski <andrei@php.net> | 2000-06-17 15:53:33 +0000 |
commit | 6e1dee8c1eb235d9400ac35564898e03833ecd69 (patch) | |
tree | 732b1dd41a0e5214fa5db47d3d282f9743dcb5bd | |
parent | a4edfc06c5afd296596838dc79d5bdafc7abd5d3 (diff) | |
download | php-git-6e1dee8c1eb235d9400ac35564898e03833ecd69.tar.gz |
Have to use zval_ptr_dtor() on values returned from user functions.
-rw-r--r-- | ext/standard/var.c | 12 | ||||
-rw-r--r-- | ext/wddx/wddx.c | 12 |
2 files changed, 8 insertions, 16 deletions
diff --git a/ext/standard/var.c b/ext/standard/var.c index ed65ce4bbe..286ca463b4 100644 --- a/ext/standard/var.c +++ b/ext/standard/var.c @@ -255,10 +255,8 @@ void php_var_serialize(pval *buf, pval **struc) zval_dtor(fname); FREE_ZVAL(fname); - if (retval_ptr) { - zval_dtor(retval_ptr); - FREE_ZVAL(retval_ptr); - } + if (retval_ptr) + zval_ptr_dtor(&retval_ptr); return; } @@ -521,10 +519,8 @@ int php_var_unserialize(pval **rval, const char **p, const char *max) zval_dtor(fname); FREE_ZVAL(fname); - if (retval_ptr) { - zval_dtor(retval_ptr); - FREE_ZVAL(retval_ptr); - } + if (retval_ptr) + zval_ptr_dtor(&retval_ptr); } return *((*p)++) == '}'; diff --git a/ext/wddx/wddx.c b/ext/wddx/wddx.c index 110c4887cc..441baba15a 100644 --- a/ext/wddx/wddx.c +++ b/ext/wddx/wddx.c @@ -449,10 +449,8 @@ static void php_wddx_serialize_object(wddx_packet *packet, zval *obj) zval_dtor(fname); FREE_ZVAL(fname); - if (retval) { - zval_dtor(retval); - FREE_ZVAL(retval); - } + if (retval) + zval_ptr_dtor(&retval); } static void php_wddx_serialize_array(wddx_packet *packet, zval *arr) @@ -756,10 +754,8 @@ static void php_wddx_pop_element(void *user_data, const char *name) zval_dtor(fname); FREE_ZVAL(fname); - if (retval) { - zval_dtor(retval); - FREE_ZVAL(retval); - } + if (retval) + zval_ptr_dtor(&retval); } else zend_hash_update(target_hash, |