From b00376884e00aa04614dd650e119aad653c1f16b Mon Sep 17 00:00:00 2001 From: Bob Weinand Date: Mon, 11 Jul 2016 23:28:14 +0200 Subject: Rewrite watchpoints to be much more stable This mainly involves a separate abstraction layer for elements (e.g. $a->b) and watchpoints (on pointer of the Bucket for example). Also better comparison handling (value backup vs. page dumps). It is not yet finished (there are sometimes false positives announced and names not yet perfect), but the functionality is working and not crashing as far as I have tested. Future scope is also relative watchpoints, e.g. "w $this->val expression()" which does not have the symbol tables as basis, but the value (in this example: return value of expression()) as basis. --- sapi/phpdbg/phpdbg_list.c | 13 ------------- 1 file changed, 13 deletions(-) (limited to 'sapi/phpdbg/phpdbg_list.c') diff --git a/sapi/phpdbg/phpdbg_list.c b/sapi/phpdbg/phpdbg_list.c index ca73209114..86a2132b74 100644 --- a/sapi/phpdbg/phpdbg_list.c +++ b/sapi/phpdbg/phpdbg_list.c @@ -372,22 +372,9 @@ zend_op_array *phpdbg_compile_string(zval *source_string, char *filename) { return op_array; } -void phpdbg_free_file_source(zval *zv) { - phpdbg_file_source *data = Z_PTR_P(zv); - - if (data->buf) { - efree(data->buf); - } - - destroy_op_array(&data->op_array); - - efree(data); -} - void phpdbg_init_list(void) { PHPDBG_G(compile_file) = zend_compile_file; PHPDBG_G(compile_string) = zend_compile_string; - zend_hash_init(&PHPDBG_G(file_sources), 1, NULL, (dtor_func_t) phpdbg_free_file_source, 0); zend_compile_file = phpdbg_compile_file; zend_compile_string = phpdbg_compile_string; } -- cgit v1.2.1