From e71766273077cff6bb8836a37e0d199f4564c612 Mon Sep 17 00:00:00 2001 From: krakjoe Date: Wed, 20 Nov 2013 14:25:15 +0000 Subject: [PATCH] fix eval for new input handling --- phpdbg_prompt.c | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/phpdbg_prompt.c b/phpdbg_prompt.c index 10fb60a900..c69c056754 100644 --- a/phpdbg_prompt.c +++ b/phpdbg_prompt.c @@ -514,12 +514,26 @@ static PHPDBG_COMMAND(eval) /* {{{ */ case STR_PARAM: { zend_bool stepping = (PHPDBG_G(flags) & PHPDBG_IS_STEPPING); zval retval; - + char *code = NULL; + PHPDBG_G(flags) &= ~ PHPDBG_IS_STEPPING; + if (input && input->start) { + code = (char*) input->start; + + if (memcmp( + code, "eval", sizeof("eval")-1) == SUCCESS) { + code += sizeof("eval")-1; + } else code += sizeof("E")-1; + + while (code && isspace(*code)) { + code++; + } + } else code = param->str; + /* disable stepping while eval() in progress */ PHPDBG_G(flags) |= PHPDBG_IN_EVAL; - if (zend_eval_stringl(param->str, param->len, + if (zend_eval_stringl(code, strlen(code), &retval, "eval()'d code" TSRMLS_CC) == SUCCESS) { zend_print_zval_r( &retval, 0 TSRMLS_CC); -- 2.40.0