summaryrefslogtreecommitdiff
path: root/Zend/zend_execute_API.c
diff options
context:
space:
mode:
authorZeev Suraski <zeev@php.net>2000-06-17 18:04:58 +0000
committerZeev Suraski <zeev@php.net>2000-06-17 18:04:58 +0000
commit34c2b0a07c5cbd5c7ea506a1891b9264c15631d0 (patch)
tree9934a803c4c8388742bedfccb160828a6c623cdf /Zend/zend_execute_API.c
parent66f1be08c8d8b437e0395ea6153664a7aa25fc7f (diff)
downloadphp-git-34c2b0a07c5cbd5c7ea506a1891b9264c15631d0.tar.gz
- Add restore_error_handler()
error_handler's are now stored in a stack
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 1ff6bd937e..4d311581e7 100644
--- a/Zend/zend_execute_API.c
+++ b/Zend/zend_execute_API.c
@@ -143,6 +143,8 @@ void init_executor(CLS_D ELS_DC)
EG(user_error_handler) = NULL;
+ zend_ptr_stack_init(&EG(user_error_handlers));
+
#ifdef ZEND_WIN32
EG(timed_out) = 0;
#endif
@@ -173,7 +175,6 @@ void shutdown_executor(ELS_D)
}
}
-
zend_ptr_stack_destroy(&EG(argument_stack));
/* Destroy all op arrays */
@@ -199,6 +200,9 @@ void shutdown_executor(ELS_D)
zval_dtor(EG(user_error_handler));
FREE_ZVAL(EG(user_error_handler));
}
+
+ zend_ptr_stack_clean(&EG(user_error_handlers), ZVAL_DESTRUCTOR, 1);
+ zend_ptr_stack_destroy(&EG(user_error_handlers));
}