From 4ad3ac09c16f3271e9428a3ffe2ae81c85edcbb2 Mon Sep 17 00:00:00 2001 From: Matt Wilmas Date: Fri, 8 May 2009 17:50:58 +0000 Subject: [PATCH] MFH: Better fix for bug #42767 (at source instead of workaround); also fixes unclosed comments in tokenizer - Plus minor cleanup of unnecessary code, to match 5.3... --- Zend/zend_compile.c | 2 -- Zend/zend_highlight.c | 25 ++----------------------- Zend/zend_language_scanner.l | 4 +++- 3 files changed, 5 insertions(+), 26 deletions(-) diff --git a/Zend/zend_compile.c b/Zend/zend_compile.c index 4b503c4905..1e3e205dab 100644 --- a/Zend/zend_compile.c +++ b/Zend/zend_compile.c @@ -4192,8 +4192,6 @@ again: case T_END_HEREDOC: efree(Z_STRVAL(zendlval->u.constant)); break; - case EOF: - return EOF; } INIT_PZVAL(&zendlval->u.constant); diff --git a/Zend/zend_highlight.c b/Zend/zend_highlight.c index 8c63970b7b..aeb63a7e03 100644 --- a/Zend/zend_highlight.c +++ b/Zend/zend_highlight.c @@ -148,19 +148,11 @@ ZEND_API void zend_highlight(zend_syntax_highlighter_ini *syntax_highlighter_ini zend_printf("", last_color); } } - switch (token_type) { - case T_END_HEREDOC: - zend_html_puts(token.value.str.val, token.value.str.len TSRMLS_CC); - break; - default: - zend_html_puts(LANG_SCNG(yy_text), LANG_SCNG(yy_leng) TSRMLS_CC); - break; - } + + zend_html_puts(LANG_SCNG(yy_text), LANG_SCNG(yy_leng) TSRMLS_CC); if (token.type == IS_STRING) { switch (token_type) { - case EOF: - goto done; case T_OPEN_TAG: case T_OPEN_TAG_WITH_ECHO: case T_CLOSE_TAG: @@ -178,19 +170,6 @@ ZEND_API void zend_highlight(zend_syntax_highlighter_ini *syntax_highlighter_ini token.type = 0; } - /* handler for trailing comments, see bug #42767 */ - if (LANG_SCNG(yy_leng) && LANG_SCNG(_yy_more_len)) { - if (last_color != syntax_highlighter_ini->highlight_comment) { - if (last_color != syntax_highlighter_ini->highlight_html) { - zend_printf(""); - } - if (syntax_highlighter_ini->highlight_comment != syntax_highlighter_ini->highlight_html) { - zend_printf("", syntax_highlighter_ini->highlight_comment); - } - } - zend_html_puts(LANG_SCNG(yy_text), LANG_SCNG(_yy_more_len) TSRMLS_CC); - } -done: if (last_color != syntax_highlighter_ini->highlight_html) { zend_printf("\n"); } diff --git a/Zend/zend_language_scanner.l b/Zend/zend_language_scanner.l index 47d1165b81..d40882df3a 100644 --- a/Zend/zend_language_scanner.l +++ b/Zend/zend_language_scanner.l @@ -2033,7 +2033,9 @@ wrong_label: <> { zend_error(E_COMPILE_WARNING,"Unterminated comment starting line %d", CG(comment_start_line)); - return 0; + yyless(yyleng - 1); + BEGIN(ST_IN_SCRIPTING); + return T_COMMENT; } -- 2.50.1