summaryrefslogtreecommitdiff
path: root/Zend/zend_execute_API.c
diff options
context:
space:
mode:
authorAndi Gutmans <andi@php.net>2000-04-11 18:16:58 +0000
committerAndi Gutmans <andi@php.net>2000-04-11 18:16:58 +0000
commit804861c5acb465abec4b3c485b2fb5e47c2431e9 (patch)
tree97e5958c83a889174550cff06bc9f2c3b0af8469 /Zend/zend_execute_API.c
parentc8e1057d1f2d1ea0b8074002955500de0522a5bf (diff)
downloadphp-git-804861c5acb465abec4b3c485b2fb5e47c2431e9.tar.gz
- Fix memory leak
Diffstat (limited to 'Zend/zend_execute_API.c')
-rw-r--r--Zend/zend_execute_API.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/Zend/zend_execute_API.c b/Zend/zend_execute_API.c
index f691ac8ffc..f2daec1083 100644
--- a/Zend/zend_execute_API.c
+++ b/Zend/zend_execute_API.c
@@ -120,7 +120,11 @@ void init_executor(CLS_D ELS_DC)
void shutdown_executor(ELS_D)
{
- zval_dtor(&EG(global_return_value));
+ if (EG(global_return_value_ptr) == &EG(global_return_value)) {
+ zval_dtor(&EG(global_return_value));
+ } else {
+ zval_ptr_dtor(EG(return_value_ptr_ptr));
+ }
zend_ptr_stack_destroy(&EG(arg_types_stack));
while (EG(symtable_cache_ptr)>=EG(symtable_cache)) {