iliaa Mon Dec 4 00:39:47 2006 UTC
Modified files:
/php-src/ext/pdo pdo_sql_parser.c pdo_sql_parser.re
Log:
MFB: Fixed bug #39483 (Problem with handling of \ char in prepared
statements).
http://cvs.php.net/viewvc.cgi/php-src/ext/pdo/pdo_sql_parser.c?r1=1.45&r2=1.46&diff_format=u
Index: php-src/ext/pdo/pdo_sql_parser.c
diff -u php-src/ext/pdo/pdo_sql_parser.c:1.45
php-src/ext/pdo/pdo_sql_parser.c:1.46
--- php-src/ext/pdo/pdo_sql_parser.c:1.45 Sun Dec 3 23:28:00 2006
+++ php-src/ext/pdo/pdo_sql_parser.c Mon Dec 4 00:39:47 2006
@@ -1,4 +1,4 @@
-/* Generated by re2c 0.10.6 on Sun Dec 3 18:28:10 2006 */
+/* Generated by re2c 0.10.6 on Sun Dec 3 19:39:21 2006 */
#line 1 "ext/pdo/pdo_sql_parser.re"
/*
+----------------------------------------------------------------------+
@@ -18,7 +18,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: pdo_sql_parser.c,v 1.45 2006/12/03 23:28:00 iliaa Exp $ */
+/* $Id: pdo_sql_parser.c,v 1.46 2006/12/04 00:39:47 iliaa Exp $ */
#include "php.h"
#include "php_pdo_driver.h"
@@ -232,8 +232,8 @@
++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
- if(yych == '\'') goto yy23;
- goto yy25;
+ if(yych <= 0x00) goto yy25;
+ goto yy23;
yy27:
yych = *++YYCURSOR;
goto yy22;
@@ -274,8 +274,8 @@
++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
- if(yych == '"') goto yy32;
- goto yy25;
+ if(yych <= 0x00) goto yy25;
+ goto yy32;
yy35:
++YYCURSOR;
yych = *YYCURSOR;
http://cvs.php.net/viewvc.cgi/php-src/ext/pdo/pdo_sql_parser.re?r1=1.35&r2=1.36&diff_format=u
Index: php-src/ext/pdo/pdo_sql_parser.re
diff -u php-src/ext/pdo/pdo_sql_parser.re:1.35
php-src/ext/pdo/pdo_sql_parser.re:1.36
--- php-src/ext/pdo/pdo_sql_parser.re:1.35 Sun Dec 3 23:28:00 2006
+++ php-src/ext/pdo/pdo_sql_parser.re Mon Dec 4 00:39:47 2006
@@ -16,7 +16,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: pdo_sql_parser.re,v 1.35 2006/12/03 23:28:00 iliaa Exp $ */
+/* $Id: pdo_sql_parser.re,v 1.36 2006/12/04 00:39:47 iliaa Exp $ */
#include "php.h"
#include "php_pdo_driver.h"
@@ -55,8 +55,8 @@
*/
/*!re2c
- (["] (ESCQQ|ANYNOEOF\[\\"])* ["]) {
RET(PDO_PARSER_TEXT); }
- (['] (ESCQ|ANYNOEOF\[\\'])* [']) {
RET(PDO_PARSER_TEXT); }
+ (["] (ESCQQ|[\\]ANYNOEOF|ANYNOEOF\[\\"])* ["]) {
RET(PDO_PARSER_TEXT); }
+ (['] (ESCQ|[\\]ANYNOEOF|ANYNOEOF\[\\'])* [']) {
RET(PDO_PARSER_TEXT); }
SPECIALS{2,}
{ RET(PDO_PARSER_TEXT); }
BINDCHR
{ RET(PDO_PARSER_BIND); }
QUESTION
{ RET(PDO_PARSER_BIND_POS); }
--
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php