diff options
| author | Xinchen Hui <laruence@php.net> | 2012-02-26 14:56:26 +0000 |
|---|---|---|
| committer | Xinchen Hui <laruence@php.net> | 2012-02-26 14:56:26 +0000 |
| commit | 5f4ae28459aa79a668283975b19ce15de1dfa0e4 (patch) | |
| tree | 4a6ca81b67fd5e5b25e1474175ebc89f1a0a172c /Zend/zend_API.c | |
| parent | c870ebe138e1f7c206c5cd22a1c73f039db5bcf0 (diff) | |
| download | php-git-5f4ae28459aa79a668283975b19ce15de1dfa0e4.tar.gz | |
Improve fix for #61165, the previous one cause #43450 test failed
Diffstat (limited to 'Zend/zend_API.c')
| -rw-r--r-- | Zend/zend_API.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/Zend/zend_API.c b/Zend/zend_API.c index 3b87145e6c..9083e609c0 100644 --- a/Zend/zend_API.c +++ b/Zend/zend_API.c @@ -255,14 +255,13 @@ static int parse_arg_object_to_string(zval **arg TSRMLS_DC) /* {{{ */ { if (Z_OBJ_HANDLER_PP(arg, cast_object)) { zval *obj; - ALLOC_ZVAL(obj); - MAKE_COPY_ZVAL(arg, obj); + MAKE_STD_ZVAL(obj); if (Z_OBJ_HANDLER_P(*arg, cast_object)(*arg, obj, IS_STRING TSRMLS_CC) == SUCCESS) { zval_ptr_dtor(arg); *arg = obj; return SUCCESS; } - zval_ptr_dtor(&obj); + efree(obj); } /* Standard PHP objects */ if (Z_OBJ_HT_PP(arg) == &std_object_handlers || !Z_OBJ_HANDLER_PP(arg, cast_object)) { |
