summaryrefslogtreecommitdiff
path: root/sapi/phpdbg/phpdbg_btree.h
diff options
context:
space:
mode:
authorBob Weinand <bobwei9@hotmail.com>2016-07-11 23:28:14 +0200
committerBob Weinand <bobwei9@hotmail.com>2016-07-11 23:58:20 +0200
commitb00376884e00aa04614dd650e119aad653c1f16b (patch)
tree9531526edb549ef5eae6ada0d6a6969dfe085e46 /sapi/phpdbg/phpdbg_btree.h
parent1223f7f91b63d37c1282c05c0fab5a16bc83bbf1 (diff)
downloadphp-git-b00376884e00aa04614dd650e119aad653c1f16b.tar.gz
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.
Diffstat (limited to 'sapi/phpdbg/phpdbg_btree.h')
-rw-r--r--sapi/phpdbg/phpdbg_btree.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/sapi/phpdbg/phpdbg_btree.h b/sapi/phpdbg/phpdbg_btree.h
index 05fb6b833a..3eae81b997 100644
--- a/sapi/phpdbg/phpdbg_btree.h
+++ b/sapi/phpdbg/phpdbg_btree.h
@@ -37,6 +37,7 @@ union _phpdbg_btree_branch {
typedef struct {
zend_ulong count;
zend_ulong depth;
+ zend_bool persistent;
phpdbg_btree_branch *branch;
} phpdbg_btree;
@@ -47,6 +48,7 @@ typedef struct {
} phpdbg_btree_position;
void phpdbg_btree_init(phpdbg_btree *tree, zend_ulong depth);
+void phpdbg_btree_clean(phpdbg_btree *tree);
phpdbg_btree_result *phpdbg_btree_find(phpdbg_btree *tree, zend_ulong idx);
phpdbg_btree_result *phpdbg_btree_find_closest(phpdbg_btree *tree, zend_ulong idx);
phpdbg_btree_position phpdbg_btree_find_between(phpdbg_btree *tree, zend_ulong lower_idx, zend_ulong higher_idx);