diff options
author | krakjoe <joe.watkins@live.co.uk> | 2014-01-16 20:10:30 +0000 |
---|---|---|
committer | krakjoe <joe.watkins@live.co.uk> | 2014-01-16 20:10:30 +0000 |
commit | 837bd24dea5c32dc186a1fe484c2c276e97e92e1 (patch) | |
tree | c2d306d722270f6b45cb60dc432bff08c666f793 /phpdbg_opcode.c | |
parent | 231a1c401bf91aa154585cbc465a6902e90bddb4 (diff) | |
download | php-git-837bd24dea5c32dc186a1fe484c2c276e97e92e1.tar.gz |
fix #50
Diffstat (limited to 'phpdbg_opcode.c')
-rw-r--r-- | phpdbg_opcode.c | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/phpdbg_opcode.c b/phpdbg_opcode.c index 025d57a08d..8119158469 100644 --- a/phpdbg_opcode.c +++ b/phpdbg_opcode.c @@ -52,13 +52,15 @@ static inline char *phpdbg_decode_op(zend_op_array *ops, znode_op *op, zend_uint case IS_VAR: case IS_TMP_VAR: { zend_ulong id = 0, *pid = NULL; - if (zend_hash_index_find(vars, (zend_ulong) ops->vars - op->var, (void**) &pid) != SUCCESS) { - id = zend_hash_num_elements(vars); - zend_hash_index_update( - vars, (zend_ulong) ops->vars - op->var, - (void**) &id, - sizeof(zend_ulong), NULL); - } else id = *pid; + if (vars != NULL) { + if (zend_hash_index_find(vars, (zend_ulong) ops->vars - op->var, (void**) &pid) != SUCCESS) { + id = zend_hash_num_elements(vars); + zend_hash_index_update( + vars, (zend_ulong) ops->vars - op->var, + (void**) &id, + sizeof(zend_ulong), NULL); + } else id = *pid; + } asprintf(&decode, "@%lu", id); } break; |