diff options
Diffstat (limited to 'sapi/phpdbg/phpdbg_opcode.c')
-rw-r--r-- | sapi/phpdbg/phpdbg_opcode.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/sapi/phpdbg/phpdbg_opcode.c b/sapi/phpdbg/phpdbg_opcode.c index 313bb4fae8..4b3bf4c668 100644 --- a/sapi/phpdbg/phpdbg_opcode.c +++ b/sapi/phpdbg/phpdbg_opcode.c @@ -115,7 +115,13 @@ char *phpdbg_decode_opline(zend_op_array *ops, zend_op *opline) /*{{{ */ /* RESULT */ switch (opline->opcode) { case ZEND_CATCH: - spprintf(&decode[3], 0, "%" PRIu32, opline->result.num); + if (opline->extended_value == ZEND_LAST_CATCH) { + if (decode[2]) { + efree(decode[2]); + decode[2] = NULL; + } + } + decode[3] = phpdbg_decode_op(ops, opline, &opline->result, opline->result_type); break; default: decode[3] = phpdbg_decode_op(ops, opline, &opline->result, opline->result_type); |