]> granicus.if.org Git - php/commitdiff
MFH: Better fix for bug #42767 (at source instead of workaround); also fixes unclosed...
authorMatt Wilmas <mattwil@php.net>
Fri, 8 May 2009 17:50:58 +0000 (17:50 +0000)
committerMatt Wilmas <mattwil@php.net>
Fri, 8 May 2009 17:50:58 +0000 (17:50 +0000)
- Plus minor cleanup of unnecessary code, to match 5.3...

Zend/zend_compile.c
Zend/zend_highlight.c
Zend/zend_language_scanner.l

index 4b503c4905012588c0f2a48e5fdc62278318c049..1e3e205dabb7503cadb76be15de88442019ae070 100644 (file)
@@ -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);
index 8c63970b7be6278c1a06c2913431e447019c5232..aeb63a7e0338b01850d92b42cb1602d82d627127 100644 (file)
@@ -148,19 +148,11 @@ ZEND_API void zend_highlight(zend_syntax_highlighter_ini *syntax_highlighter_ini
                                zend_printf("<span style=\"color: %s\">", 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("</span>");
-                       }
-                       if (syntax_highlighter_ini->highlight_comment != syntax_highlighter_ini->highlight_html) {
-                               zend_printf("<span style=\"color: %s\">", 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("</span>\n");
        }
index 47d1165b813a2a8be6dce595842359daa99e697f..d40882df3ad1a849ebbb663c094d40b36a5f5916 100644 (file)
@@ -2033,7 +2033,9 @@ wrong_label:
 
 <ST_COMMENT,ST_DOC_COMMENT><<EOF>> {
        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;
 }