summaryrefslogtreecommitdiff
path: root/sapi/phpdbg/phpdbg_prompt.c
diff options
context:
space:
mode:
Diffstat (limited to 'sapi/phpdbg/phpdbg_prompt.c')
-rw-r--r--sapi/phpdbg/phpdbg_prompt.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/sapi/phpdbg/phpdbg_prompt.c b/sapi/phpdbg/phpdbg_prompt.c
index cb46407957..f586bb5a84 100644
--- a/sapi/phpdbg/phpdbg_prompt.c
+++ b/sapi/phpdbg/phpdbg_prompt.c
@@ -552,6 +552,7 @@ PHPDBG_COMMAND(run) /* {{{ */
zend_op_array *orig_op_array = EG(active_op_array);
zval **orig_retval_ptr = EG(return_value_ptr_ptr);
zend_bool restore = 1;
+ zend_execute_data *ex = EG(current_execute_data);
if (!PHPDBG_G(ops)) {
if (phpdbg_compile(TSRMLS_C) == FAILURE) {
@@ -566,6 +567,11 @@ PHPDBG_COMMAND(run) /* {{{ */
zend_rebuild_symbol_table(TSRMLS_C);
}
+ /* clean up from last execution */
+ if (ex && ex->symbol_table) {
+ zend_hash_clean(ex->symbol_table);
+ }
+
/* clean seek state */
PHPDBG_G(flags) &= ~PHPDBG_SEEK_MASK;
zend_hash_clean(