[php-src] PHP-8.5: Merge branch 'PHP-8.4' into PHP-8.5
Ilia Alshanetsky <[email protected]>
| Newsgroups | gmane.comp.php.cvs.general |
|---|---|
| Message-ID | <[email protected]> |
Author: Ilia Alshanetsky (iliaal)
Date: 2026-06-29T07:03:55-04:00
Commit: https://github.com/php/php-src/commit/d92b5f9d1cf825a670b1f63f5b4a0fe928294476
Raw diff: https://github.com/php/php-src/commit/d92b5f9d1cf825a670b1f63f5b4a0fe928294476.diff
Merge branch 'PHP-8.4' into PHP-8.5
* PHP-8.4:
Fix GH-17387: crash on unterminated quote in phpdbg lexer
Changed paths:
A sapi/phpdbg/tests/gh17387.phpt
M NEWS
M sapi/phpdbg/phpdbg_lexer.l
Diff:
diff --git a/NEWS b/NEWS
index 9522c2028834..89f41d2bb2d3 100644
--- a/NEWS
+++ b/NEWS
@@ -30,6 +30,9 @@ PHP NEWS
copying, ArrayAccess, stream lookup, directory iteration and extraction.
(Weilin Du)
+- PHPDBG:
+ . Fixed bug GH-17387 (Trivial crash in phpdbg lexer). (iliaal)
+
- Reflection:
. Fixed bug GH-22324 (Ignore leading namespace separator in
ReflectionParameter::__construct()). (jorgsowa)
diff --git a/sapi/phpdbg/phpdbg_lexer.l b/sapi/phpdbg/phpdbg_lexer.l
index ba1423c5a4ec..7c6315fc2a05 100644
--- a/sapi/phpdbg/phpdbg_lexer.l
+++ b/sapi/phpdbg/phpdbg_lexer.l
@@ -166,6 +166,13 @@ INPUT ("\\"[#"']|["]("\\\\"|"\\"["]|[^\n\000"])*["]|[']("\\"[']|"\\\\"|[^\
return T_ID;
}
+<NORMAL>["'] {
+ phpdbg_init_param(yylval, STR_PARAM);
+ yylval->str = estrndup(yytext, yyleng);
+ yylval->len = yyleng;
+ return T_ID;
+}
+
<RAW>{INPUT} {
phpdbg_init_param(yylval, STR_PARAM);
yylval->str = estrdup(yytext);
diff --git a/sapi/phpdbg/tests/gh17387.phpt b/sapi/phpdbg/tests/gh17387.phpt
new file mode 100644
index 000000000000..af45fd4ba91f
--- /dev/null
+++ b/sapi/phpdbg/tests/gh17387.phpt
@@ -0,0 +1,8 @@
+--TEST--
+GH-17387 (Trivial crash in phpdbg lexer)
+--PHPDBG--
+a';
+q
+--EXPECT--
+prompt> [The command "a" could not be found]
+prompt>