[PHP-CVS] cvs: php-src(PHP_5_2) /ext/pdo pdo_sql_parser.c pdo_sql_parser.re
felipe Thu Nov 13 23:23:11 2008 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/pdopdo_sql_parser.c pdo_sql_parser.re Log: - MFH: Better fix http://cvs.php.net/viewvc.cgi/php-src/ext/pdo/pdo_sql_parser.c?r1=1.35.2.6.2.19&r2=1.35.2.6.2.20&diff_format=u Index: php-src/ext/pdo/pdo_sql_parser.c diff -u php-src/ext/pdo/pdo_sql_parser.c:1.35.2.6.2.19 php-src/ext/pdo/pdo_sql_parser.c:1.35.2.6.2.20 --- php-src/ext/pdo/pdo_sql_parser.c:1.35.2.6.2.19 Thu Nov 13 14:53:55 2008 +++ php-src/ext/pdo/pdo_sql_parser.cThu Nov 13 23:23:11 2008 @@ -1,4 +1,4 @@ -/* Generated by re2c 0.13.6.dev on Thu Nov 13 12:51:46 2008 */ +/* Generated by re2c 0.13.6.dev on Thu Nov 13 21:23:12 2008 */ #line 1 "ext/pdo/pdo_sql_parser.re" /* +--+ @@ -18,7 +18,7 @@ +--+ */ -/* $Id: pdo_sql_parser.c,v 1.35.2.6.2.19 2008/11/13 14:53:55 felipe Exp $ */ +/* $Id: pdo_sql_parser.c,v 1.35.2.6.2.20 2008/11/13 23:23:11 felipe Exp $ */ #include "php.h" #include "php_pdo_driver.h" @@ -550,9 +550,8 @@ } else if (query_type == PDO_PLACEHOLDER_POSITIONAL) { /* rewrite ? to :pdoX */ - char idxbuf[32]; + char *name, *idxbuf; const char *tmpl = stmt->named_rewrite_template ? stmt->named_rewrite_template : ":pdo%d"; - char *name; int bind_no = 1; newbuffer_len = inquery_len; @@ -569,21 +568,19 @@ /* check if bound parameter is already available */ if (!strcmp(name, "?") || zend_hash_find(stmt->bound_param_map, name, plc->len + 1, (void**) &p) == FAILURE) { - snprintf(idxbuf, sizeof(idxbuf), tmpl, bind_no++); + spprintf(&idxbuf, 0, tmpl, bind_no++); } else { - memset(idxbuf, 0, sizeof(idxbuf)); - memcpy(idxbuf, p, sizeof(idxbuf)); + idxbuf = estrdup(p); skip_map = 1; } - plc->quoted = estrdup(idxbuf); + plc->quoted = idxbuf; plc->qlen = strlen(plc->quoted); plc->freeq = 1; newbuffer_len += plc->qlen; if (!skip_map && stmt->named_rewrite_template) { /* create a mapping */ - zend_hash_update(stmt->bound_param_map, name, plc->len + 1, idxbuf, plc->qlen + 1, NULL); } http://cvs.php.net/viewvc.cgi/php-src/ext/pdo/pdo_sql_parser.re?r1=1.28.2.4.2.16&r2=1.28.2.4.2.17&diff_format=u Index: php-src/ext/pdo/pdo_sql_parser.re diff -u php-src/ext/pdo/pdo_sql_parser.re:1.28.2.4.2.16 php-src/ext/pdo/pdo_sql_parser.re:1.28.2.4.2.17 --- php-src/ext/pdo/pdo_sql_parser.re:1.28.2.4.2.16 Thu Nov 13 14:53:55 2008 +++ php-src/ext/pdo/pdo_sql_parser.re Thu Nov 13 23:23:11 2008 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: pdo_sql_parser.re,v 1.28.2.4.2.16 2008/11/13 14:53:55 felipe Exp $ */ +/* $Id: pdo_sql_parser.re,v 1.28.2.4.2.17 2008/11/13 23:23:11 felipe Exp $ */ #include "php.h" #include "php_pdo_driver.h" @@ -299,9 +299,8 @@ } else if (query_type == PDO_PLACEHOLDER_POSITIONAL) { /* rewrite ? to :pdoX */ - char idxbuf[32]; + char *name, *idxbuf; const char *tmpl = stmt->named_rewrite_template ? stmt->named_rewrite_template : ":pdo%d"; - char *name; int bind_no = 1; newbuffer_len = inquery_len; @@ -318,21 +317,19 @@ /* check if bound parameter is already available */ if (!strcmp(name, "?") || zend_hash_find(stmt->bound_param_map, name, plc->len + 1, (void**) &p) == FAILURE) { - snprintf(idxbuf, sizeof(idxbuf), tmpl, bind_no++); + spprintf(&idxbuf, 0, tmpl, bind_no++); } else { - memset(idxbuf, 0, sizeof(idxbuf)); - memcpy(idxbuf, p, sizeof(idxbuf)); + idxbuf = estrdup(p); skip_map = 1; } - plc->quoted = estrdup(idxbuf); + plc->quoted = idxbuf; plc->qlen = strlen(plc->quoted); plc->freeq = 1; newbuffer_len += plc->qlen; if (!skip_map && stmt->named_rewrite_template) {
[PHP-CVS] cvs: php-src(PHP_5_2) /ext/pdo pdo_sql_parser.c pdo_sql_parser.re
felipe Thu Nov 13 14:53:56 2008 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/pdopdo_sql_parser.c pdo_sql_parser.re Log: - Reverted last change, only in this branch http://cvs.php.net/viewvc.cgi/php-src/ext/pdo/pdo_sql_parser.c?r1=1.35.2.6.2.18&r2=1.35.2.6.2.19&diff_format=u Index: php-src/ext/pdo/pdo_sql_parser.c diff -u php-src/ext/pdo/pdo_sql_parser.c:1.35.2.6.2.18 php-src/ext/pdo/pdo_sql_parser.c:1.35.2.6.2.19 --- php-src/ext/pdo/pdo_sql_parser.c:1.35.2.6.2.18 Thu Nov 13 13:09:47 2008 +++ php-src/ext/pdo/pdo_sql_parser.cThu Nov 13 14:53:55 2008 @@ -1,4 +1,4 @@ -/* Generated by re2c 0.13.6.dev on Thu Nov 13 11:09:07 2008 */ +/* Generated by re2c 0.13.6.dev on Thu Nov 13 12:51:46 2008 */ #line 1 "ext/pdo/pdo_sql_parser.re" /* +--+ @@ -18,7 +18,7 @@ +--+ */ -/* $Id: pdo_sql_parser.c,v 1.35.2.6.2.18 2008/11/13 13:09:47 felipe Exp $ */ +/* $Id: pdo_sql_parser.c,v 1.35.2.6.2.19 2008/11/13 14:53:55 felipe Exp $ */ #include "php.h" #include "php_pdo_driver.h" @@ -572,7 +572,7 @@ snprintf(idxbuf, sizeof(idxbuf), tmpl, bind_no++); } else { memset(idxbuf, 0, sizeof(idxbuf)); - memcpy(idxbuf, p, strlen(p)); + memcpy(idxbuf, p, sizeof(idxbuf)); skip_map = 1; } http://cvs.php.net/viewvc.cgi/php-src/ext/pdo/pdo_sql_parser.re?r1=1.28.2.4.2.15&r2=1.28.2.4.2.16&diff_format=u Index: php-src/ext/pdo/pdo_sql_parser.re diff -u php-src/ext/pdo/pdo_sql_parser.re:1.28.2.4.2.15 php-src/ext/pdo/pdo_sql_parser.re:1.28.2.4.2.16 --- php-src/ext/pdo/pdo_sql_parser.re:1.28.2.4.2.15 Thu Nov 13 13:09:47 2008 +++ php-src/ext/pdo/pdo_sql_parser.re Thu Nov 13 14:53:55 2008 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: pdo_sql_parser.re,v 1.28.2.4.2.15 2008/11/13 13:09:47 felipe Exp $ */ +/* $Id: pdo_sql_parser.re,v 1.28.2.4.2.16 2008/11/13 14:53:55 felipe Exp $ */ #include "php.h" #include "php_pdo_driver.h" @@ -321,7 +321,7 @@ snprintf(idxbuf, sizeof(idxbuf), tmpl, bind_no++); } else { memset(idxbuf, 0, sizeof(idxbuf)); - memcpy(idxbuf, p, strlen(p)); + memcpy(idxbuf, p, sizeof(idxbuf)); skip_map = 1; } -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_2) /ext/pdo pdo_sql_parser.c pdo_sql_parser.re
felipe Thu Nov 13 13:09:47 2008 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/pdopdo_sql_parser.c pdo_sql_parser.re Log: - MFH: Fixed invalid reads http://cvs.php.net/viewvc.cgi/php-src/ext/pdo/pdo_sql_parser.c?r1=1.35.2.6.2.17&r2=1.35.2.6.2.18&diff_format=u Index: php-src/ext/pdo/pdo_sql_parser.c diff -u php-src/ext/pdo/pdo_sql_parser.c:1.35.2.6.2.17 php-src/ext/pdo/pdo_sql_parser.c:1.35.2.6.2.18 --- php-src/ext/pdo/pdo_sql_parser.c:1.35.2.6.2.17 Thu Oct 23 18:56:05 2008 +++ php-src/ext/pdo/pdo_sql_parser.cThu Nov 13 13:09:47 2008 @@ -1,4 +1,4 @@ -/* Generated by re2c 0.13.5 on Thu Oct 23 16:18:59 2008 */ +/* Generated by re2c 0.13.6.dev on Thu Nov 13 11:09:07 2008 */ #line 1 "ext/pdo/pdo_sql_parser.re" /* +--+ @@ -18,7 +18,7 @@ +--+ */ -/* $Id: pdo_sql_parser.c,v 1.35.2.6.2.17 2008/10/23 18:56:05 felipe Exp $ */ +/* $Id: pdo_sql_parser.c,v 1.35.2.6.2.18 2008/11/13 13:09:47 felipe Exp $ */ #include "php.h" #include "php_pdo_driver.h" @@ -572,7 +572,7 @@ snprintf(idxbuf, sizeof(idxbuf), tmpl, bind_no++); } else { memset(idxbuf, 0, sizeof(idxbuf)); - memcpy(idxbuf, p, sizeof(idxbuf)); + memcpy(idxbuf, p, strlen(p)); skip_map = 1; } http://cvs.php.net/viewvc.cgi/php-src/ext/pdo/pdo_sql_parser.re?r1=1.28.2.4.2.14&r2=1.28.2.4.2.15&diff_format=u Index: php-src/ext/pdo/pdo_sql_parser.re diff -u php-src/ext/pdo/pdo_sql_parser.re:1.28.2.4.2.14 php-src/ext/pdo/pdo_sql_parser.re:1.28.2.4.2.15 --- php-src/ext/pdo/pdo_sql_parser.re:1.28.2.4.2.14 Thu Oct 23 18:56:05 2008 +++ php-src/ext/pdo/pdo_sql_parser.re Thu Nov 13 13:09:47 2008 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: pdo_sql_parser.re,v 1.28.2.4.2.14 2008/10/23 18:56:05 felipe Exp $ */ +/* $Id: pdo_sql_parser.re,v 1.28.2.4.2.15 2008/11/13 13:09:47 felipe Exp $ */ #include "php.h" #include "php_pdo_driver.h" @@ -321,7 +321,7 @@ snprintf(idxbuf, sizeof(idxbuf), tmpl, bind_no++); } else { memset(idxbuf, 0, sizeof(idxbuf)); - memcpy(idxbuf, p, sizeof(idxbuf)); + memcpy(idxbuf, p, strlen(p)); skip_map = 1; } -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_2) /ext/pdo pdo_sql_parser.c pdo_sql_parser.re /ext/pdo_pgsql/tests bug43925.phpt
felipe Thu Oct 23 18:56:05 2008 UTC Added files: (Branch: PHP_5_2) /php-src/ext/pdo_pgsql/testsbug43925.phpt Modified files: /php-src/ext/pdopdo_sql_parser.c pdo_sql_parser.re Log: - MFH: Fixed bug #43925 (Incorrect argument counter in prepared statements with pgsql) http://cvs.php.net/viewvc.cgi/php-src/ext/pdo/pdo_sql_parser.c?r1=1.35.2.6.2.16&r2=1.35.2.6.2.17&diff_format=u Index: php-src/ext/pdo/pdo_sql_parser.c diff -u php-src/ext/pdo/pdo_sql_parser.c:1.35.2.6.2.16 php-src/ext/pdo/pdo_sql_parser.c:1.35.2.6.2.17 --- php-src/ext/pdo/pdo_sql_parser.c:1.35.2.6.2.16 Fri Oct 10 12:11:36 2008 +++ php-src/ext/pdo/pdo_sql_parser.cThu Oct 23 18:56:05 2008 @@ -1,4 +1,4 @@ -/* Generated by re2c 0.13.5 on Fri Oct 10 09:03:26 2008 */ +/* Generated by re2c 0.13.5 on Thu Oct 23 16:18:59 2008 */ #line 1 "ext/pdo/pdo_sql_parser.re" /* +--+ @@ -18,7 +18,7 @@ +--+ */ -/* $Id: pdo_sql_parser.c,v 1.35.2.6.2.16 2008/10/10 12:11:36 felipe Exp $ */ +/* $Id: pdo_sql_parser.c,v 1.35.2.6.2.17 2008/10/23 18:56:05 felipe Exp $ */ #include "php.h" #include "php_pdo_driver.h" @@ -553,6 +553,7 @@ char idxbuf[32]; const char *tmpl = stmt->named_rewrite_template ? stmt->named_rewrite_template : ":pdo%d"; char *name; + int bind_no = 1; newbuffer_len = inquery_len; @@ -568,7 +569,7 @@ /* check if bound parameter is already available */ if (!strcmp(name, "?") || zend_hash_find(stmt->bound_param_map, name, plc->len + 1, (void**) &p) == FAILURE) { - snprintf(idxbuf, sizeof(idxbuf), tmpl, plc->bindno + 1); + snprintf(idxbuf, sizeof(idxbuf), tmpl, bind_no++); } else { memset(idxbuf, 0, sizeof(idxbuf)); memcpy(idxbuf, p, sizeof(idxbuf)); http://cvs.php.net/viewvc.cgi/php-src/ext/pdo/pdo_sql_parser.re?r1=1.28.2.4.2.13&r2=1.28.2.4.2.14&diff_format=u Index: php-src/ext/pdo/pdo_sql_parser.re diff -u php-src/ext/pdo/pdo_sql_parser.re:1.28.2.4.2.13 php-src/ext/pdo/pdo_sql_parser.re:1.28.2.4.2.14 --- php-src/ext/pdo/pdo_sql_parser.re:1.28.2.4.2.13 Fri Oct 10 12:11:36 2008 +++ php-src/ext/pdo/pdo_sql_parser.re Thu Oct 23 18:56:05 2008 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: pdo_sql_parser.re,v 1.28.2.4.2.13 2008/10/10 12:11:36 felipe Exp $ */ +/* $Id: pdo_sql_parser.re,v 1.28.2.4.2.14 2008/10/23 18:56:05 felipe Exp $ */ #include "php.h" #include "php_pdo_driver.h" @@ -302,6 +302,7 @@ char idxbuf[32]; const char *tmpl = stmt->named_rewrite_template ? stmt->named_rewrite_template : ":pdo%d"; char *name; + int bind_no = 1; newbuffer_len = inquery_len; @@ -317,7 +318,7 @@ /* check if bound parameter is already available */ if (!strcmp(name, "?") || zend_hash_find(stmt->bound_param_map, name, plc->len + 1, (void**) &p) == FAILURE) { - snprintf(idxbuf, sizeof(idxbuf), tmpl, plc->bindno + 1); + snprintf(idxbuf, sizeof(idxbuf), tmpl, bind_no++); } else { memset(idxbuf, 0, sizeof(idxbuf)); memcpy(idxbuf, p, sizeof(idxbuf)); http://cvs.php.net/viewvc.cgi/php-src/ext/pdo_pgsql/tests/bug43925.phpt?view=markup&rev=1.1 Index: php-src/ext/pdo_pgsql/tests/bug43925.phpt +++ php-src/ext/pdo_pgsql/tests/bug43925.phpt --TEST-- Bug #43925 (Incorrect argument counter in prepared statements with pgsql) --SKIPIF-- --FILE-- query('DROP TABLE nodes'); $dbh->query(' CREATE TABLE nodes ( id integer NOT NULL PRIMARY KEY , root integer NOT NULL , lft integer NOT NULL , rgt integer NOT NULL );'); $dbh->query('INSERT INTO nodes (id, root, lft, rgt) VALUES (1, 1, 1, 6);'); $dbh->query('INSERT INTO nodes (id, root, lft, rgt) VALUES (2, 1, 2, 3);'); $dbh->query('INSERT INTO nodes (id, root, lft, rgt) VALUES (3, 1, 4, 5);'); $stmt = $dbh->prepare(' SELECT * FROM nodes WHERE (:rootId > 0 OR lft > :left OR rgt > :left) AND (root = :rootId OR root = :left) AND (1 > :left OR 1 < :left OR 1 = :left) AND (:x > 0 OR :x < 10 OR :x > 100) OR :y = 1 OR :left = 1 '); $stmt->bindValue('left', 1, PDO::PARAM_INT); $stmt->bindValue('rootId', 3, PDO::PARAM_INT); $stmt->bindValue('x', 5, PDO::PARAM_INT); $stmt->bindValue('y', 50, PDO::PARAM_INT); $stmt->execute(); foreach ($stmt->fetchAll()
Re: [PHP-CVS] cvs: php-src(PHP_5_2) /ext/pdo pdo_sql_parser.c pdo_sql_parser.re /ext/pdo_mysql/tests bug41125.phpt
Em Sáb, 2008-10-11 às 00:22 +0400, Antony Dovgal escreveu: > On 10.10.2008 16:11, Felipe Pena wrote: > > felipe Fri Oct 10 12:11:36 2008 UTC > > > > Added files: (Branch: PHP_5_2) > > /php-src/ext/pdo_mysql/testsbug41125.phpt > > > > Modified files: > > /php-src/ext/pdopdo_sql_parser.c pdo_sql_parser.re > > Log: > > MFH: > > - Fixed bug #44251 (Question mark and an escaped singel quote lead to an > > exception) > > - Fixed bug #41125 (PDO mysql + quote() + prepare() can result in seg > > fault) > > Patch by: tsteiner at nerdclub dot net > > > > > > > > Did you forget to commit that .inc file? > > # cat /local/qa/5_2/ext/pdo_mysql/tests/bug41125.diff > 001+ Warning: > require_once(/local/qa/5_2/ext/pdo_mysql/tests/mysql_pdo_test.inc): failed to > open stream: No such file or directory in > /local/qa/5_2/ext/pdo_mysql/tests/bug41125.php on line 3 > 001- 1 > 002- 0 > 003- --- > 004- [1] Query: [[SELECT 1 FROM DUAL WHERE 1 = '?\'\'']] > 003+ Fatal error: require_once(): Failed opening required > '/local/qa/5_2/ext/pdo_mysql/tests/mysql_pdo_test.inc' > (include_path='.:/usr/local/lib/php') in > /local/qa/5_2/ext/pdo_mysql/tests/bug41125.php on line 3 > Fixed, thanks! -- Regards, Felipe Pena -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-CVS] cvs: php-src(PHP_5_2) /ext/pdo pdo_sql_parser.c pdo_sql_parser.re /ext/pdo_mysql/tests bug41125.phpt
On 10.10.2008 16:11, Felipe Pena wrote: > felipeFri Oct 10 12:11:36 2008 UTC > > Added files: (Branch: PHP_5_2) > /php-src/ext/pdo_mysql/tests bug41125.phpt > > Modified files: > /php-src/ext/pdo pdo_sql_parser.c pdo_sql_parser.re > Log: > MFH: > - Fixed bug #44251 (Question mark and an escaped singel quote lead to an > exception) > - Fixed bug #41125 (PDO mysql + quote() + prepare() can result in seg fault) > Patch by: tsteiner at nerdclub dot net > > > Did you forget to commit that .inc file? # cat /local/qa/5_2/ext/pdo_mysql/tests/bug41125.diff 001+ Warning: require_once(/local/qa/5_2/ext/pdo_mysql/tests/mysql_pdo_test.inc): failed to open stream: No such file or directory in /local/qa/5_2/ext/pdo_mysql/tests/bug41125.php on line 3 001- 1 002- 0 003- --- 004- [1] Query: [[SELECT 1 FROM DUAL WHERE 1 = '?\'\'']] 003+ Fatal error: require_once(): Failed opening required '/local/qa/5_2/ext/pdo_mysql/tests/mysql_pdo_test.inc' (include_path='.:/usr/local/lib/php') in /local/qa/5_2/ext/pdo_mysql/tests/bug41125.php on line 3 -- Wbr, Antony Dovgal -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_2) /ext/pdo pdo_sql_parser.c pdo_sql_parser.re /ext/pdo_mysql/tests bug41125.phpt
felipe Fri Oct 10 12:11:36 2008 UTC Added files: (Branch: PHP_5_2) /php-src/ext/pdo_mysql/testsbug41125.phpt Modified files: /php-src/ext/pdopdo_sql_parser.c pdo_sql_parser.re Log: MFH: - Fixed bug #44251 (Question mark and an escaped singel quote lead to an exception) - Fixed bug #41125 (PDO mysql + quote() + prepare() can result in seg fault) Patch by: tsteiner at nerdclub dot net http://cvs.php.net/viewvc.cgi/php-src/ext/pdo/pdo_sql_parser.c?r1=1.35.2.6.2.15&r2=1.35.2.6.2.16&diff_format=u Index: php-src/ext/pdo/pdo_sql_parser.c diff -u php-src/ext/pdo/pdo_sql_parser.c:1.35.2.6.2.15 php-src/ext/pdo/pdo_sql_parser.c:1.35.2.6.2.16 --- php-src/ext/pdo/pdo_sql_parser.c:1.35.2.6.2.15 Mon Dec 31 07:20:09 2007 +++ php-src/ext/pdo/pdo_sql_parser.cFri Oct 10 12:11:36 2008 @@ -1,4 +1,4 @@ -/* Generated by re2c 0.11.0 on Mon Nov 26 16:10:28 2007 */ +/* Generated by re2c 0.13.5 on Fri Oct 10 09:03:26 2008 */ #line 1 "ext/pdo/pdo_sql_parser.re" /* +--+ @@ -18,7 +18,7 @@ +--+ */ -/* $Id: pdo_sql_parser.c,v 1.35.2.6.2.15 2007/12/31 07:20:09 sebastian Exp $ */ +/* $Id: pdo_sql_parser.c,v 1.35.2.6.2.16 2008/10/10 12:11:36 felipe Exp $ */ #include "php.h" #include "php_pdo_driver.h" @@ -55,9 +55,9 @@ { YYCTYPE yych; - if((YYLIMIT - YYCURSOR) < 2) YYFILL(2); + if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2); yych = *YYCURSOR; - switch(yych) { + switch (yych) { case 0x00: goto yy11; case '"': goto yy2; case '\'': goto yy4; @@ -66,18 +66,19 @@ default:goto yy8; } yy2: - yych = *++YYCURSOR; - goto yy24; + yych = *(YYMARKER = ++YYCURSOR); + if (yych >= 0x01) goto yy26; yy3: #line 63 "ext/pdo/pdo_sql_parser.re" { SKIP_ONE(PDO_PARSER_TEXT); } #line 75 "ext/pdo/pdo_sql_parser.c" yy4: - yych = *++YYCURSOR; + yych = *(YYMARKER = ++YYCURSOR); + if (yych <= 0x00) goto yy3; goto yy20; yy5: yych = *++YYCURSOR; - switch(yych) { + switch (yych) { case '0': case '1': case '2': @@ -147,7 +148,7 @@ } yy6: ++YYCURSOR; - switch((yych = *YYCURSOR)) { + switch ((yych = *YYCURSOR)) { case ':': case '?': goto yy13; default:goto yy7; @@ -155,12 +156,12 @@ yy7: #line 62 "ext/pdo/pdo_sql_parser.re" { RET(PDO_PARSER_BIND_POS); } -#line 159 "ext/pdo/pdo_sql_parser.c" +#line 160 "ext/pdo/pdo_sql_parser.c" yy8: ++YYCURSOR; - if(YYLIMIT == YYCURSOR) YYFILL(1); + if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; - switch(yych) { + switch (yych) { case 0x00: case '"': case '\'': @@ -171,17 +172,17 @@ yy10: #line 64 "ext/pdo/pdo_sql_parser.re" { RET(PDO_PARSER_TEXT); } -#line 175 "ext/pdo/pdo_sql_parser.c" +#line 176 "ext/pdo/pdo_sql_parser.c" yy11: ++YYCURSOR; #line 65 "ext/pdo/pdo_sql_parser.re" { RET(PDO_PARSER_EOI); } -#line 180 "ext/pdo/pdo_sql_parser.c" +#line 181 "ext/pdo/pdo_sql_parser.c" yy13: ++YYCURSOR; - if(YYLIMIT == YYCURSOR) YYFILL(1); + if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; - switch(yych) { + switch (yych) { case ':': case '?': goto yy13; default:goto yy15; @@ -189,12 +190,12 @@ yy15: #line 60 "ext/pdo/pdo_sql_parser.re" { RET(PDO_PARSER_TEXT); } -#line 193 "ext/pdo/pdo_sql_parser.c" +#line 194 "ext/pdo/pdo_sql_parser.c" yy16: ++YYCURSOR; - if(YYLIMIT == YYCURSOR) YYFILL(1); + if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; - switch(yych) { + switch (yych) { case '0': case '1': case '2': @@ -263,35 +264,54 @@ yy18: #line 61 "ext/pdo/pdo_sql_parser.re" { RET(PDO_PARSER_BIND); } -#line 267 "ext/pdo/pdo_sql_parser.c" +#line 268 "ext/pdo/pdo_sql_parser.c" yy19: ++YYCURSOR; - if(YYLIMIT == YYCURSOR) YYFILL(1); + if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; yy20: - switch(yych) { - case '\'': goto yy21; + switch (yych) { + case 0x00: goto yy21; + case '\'': goto yy23; + case '\\': goto yy22; default:goto yy19; } yy21: + YYCURSOR = YYMARKER; + goto yy3; +yy22: + ++YYCURSOR; + if (YYLIMIT <= YYCURSOR) YYFILL(1); + yych = *YYCURSOR; + if (yych <= 0x00) goto yy21; + goto yy19; +yy23: ++YYCURSOR; #line 59 "ext/pdo/pdo_sql_parser.re" { RET(PDO_PARSER_TEXT); } -#line 281 "ext/pdo/pdo_sql_parser.c" -yy23: +#line 293 "ext/pdo/pdo_sql_parser.c" +yy25: ++YYCURSOR; - if(YY
[PHP-CVS] cvs: php-src(PHP_5_2) /ext/pdo pdo_sql_parser.c pdo_sql_parser.re
iliaa Mon Nov 26 21:10:41 2007 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/pdopdo_sql_parser.c pdo_sql_parser.re Log: MFB: Revert addition of - char support for bound param names http://cvs.php.net/viewvc.cgi/php-src/ext/pdo/pdo_sql_parser.c?r1=1.35.2.6.2.13&r2=1.35.2.6.2.14&diff_format=u Index: php-src/ext/pdo/pdo_sql_parser.c diff -u php-src/ext/pdo/pdo_sql_parser.c:1.35.2.6.2.13 php-src/ext/pdo/pdo_sql_parser.c:1.35.2.6.2.14 --- php-src/ext/pdo/pdo_sql_parser.c:1.35.2.6.2.13 Mon Oct 29 22:37:25 2007 +++ php-src/ext/pdo/pdo_sql_parser.cMon Nov 26 21:10:41 2007 @@ -1,4 +1,4 @@ -/* Generated by re2c 0.11.0 on Mon Oct 29 18:36:37 2007 */ +/* Generated by re2c 0.11.0 on Mon Nov 26 16:10:28 2007 */ #line 1 "ext/pdo/pdo_sql_parser.re" /* +--+ @@ -18,7 +18,7 @@ +--+ */ -/* $Id: pdo_sql_parser.c,v 1.35.2.6.2.13 2007/10/29 22:37:25 iliaa Exp $ */ +/* $Id: pdo_sql_parser.c,v 1.35.2.6.2.14 2007/11/26 21:10:41 iliaa Exp $ */ #include "php.h" #include "php_pdo_driver.h" @@ -78,7 +78,6 @@ yy5: yych = *++YYCURSOR; switch(yych) { - case '-': case '0': case '1': case '2': @@ -156,7 +155,7 @@ yy7: #line 62 "ext/pdo/pdo_sql_parser.re" { RET(PDO_PARSER_BIND_POS); } -#line 160 "ext/pdo/pdo_sql_parser.c" +#line 159 "ext/pdo/pdo_sql_parser.c" yy8: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); @@ -172,12 +171,12 @@ yy10: #line 64 "ext/pdo/pdo_sql_parser.re" { RET(PDO_PARSER_TEXT); } -#line 176 "ext/pdo/pdo_sql_parser.c" +#line 175 "ext/pdo/pdo_sql_parser.c" yy11: ++YYCURSOR; #line 65 "ext/pdo/pdo_sql_parser.re" { RET(PDO_PARSER_EOI); } -#line 181 "ext/pdo/pdo_sql_parser.c" +#line 180 "ext/pdo/pdo_sql_parser.c" yy13: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); @@ -190,13 +189,12 @@ yy15: #line 60 "ext/pdo/pdo_sql_parser.re" { RET(PDO_PARSER_TEXT); } -#line 194 "ext/pdo/pdo_sql_parser.c" +#line 193 "ext/pdo/pdo_sql_parser.c" yy16: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; switch(yych) { - case '-': case '0': case '1': case '2': @@ -265,7 +263,7 @@ yy18: #line 61 "ext/pdo/pdo_sql_parser.re" { RET(PDO_PARSER_BIND); } -#line 269 "ext/pdo/pdo_sql_parser.c" +#line 267 "ext/pdo/pdo_sql_parser.c" yy19: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); @@ -279,7 +277,7 @@ ++YYCURSOR; #line 59 "ext/pdo/pdo_sql_parser.re" { RET(PDO_PARSER_TEXT); } -#line 283 "ext/pdo/pdo_sql_parser.c" +#line 281 "ext/pdo/pdo_sql_parser.c" yy23: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); @@ -293,7 +291,7 @@ ++YYCURSOR; #line 58 "ext/pdo/pdo_sql_parser.re" { RET(PDO_PARSER_TEXT); } -#line 297 "ext/pdo/pdo_sql_parser.c" +#line 295 "ext/pdo/pdo_sql_parser.c" } #line 66 "ext/pdo/pdo_sql_parser.re" http://cvs.php.net/viewvc.cgi/php-src/ext/pdo/pdo_sql_parser.re?r1=1.28.2.4.2.10&r2=1.28.2.4.2.11&diff_format=u Index: php-src/ext/pdo/pdo_sql_parser.re diff -u php-src/ext/pdo/pdo_sql_parser.re:1.28.2.4.2.10 php-src/ext/pdo/pdo_sql_parser.re:1.28.2.4.2.11 --- php-src/ext/pdo/pdo_sql_parser.re:1.28.2.4.2.10 Mon Oct 29 22:37:25 2007 +++ php-src/ext/pdo/pdo_sql_parser.re Mon Nov 26 21:10:41 2007 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: pdo_sql_parser.re,v 1.28.2.4.2.10 2007/10/29 22:37:25 iliaa Exp $ */ +/* $Id: pdo_sql_parser.re,v 1.28.2.4.2.11 2007/11/26 21:10:41 iliaa Exp $ */ #include "php.h" #include "php_pdo_driver.h" @@ -46,7 +46,7 @@ s->tok = cursor; /*!re2c - BINDCHR = [:][a-zA-Z0-9_-]+; + BINDCHR = [:][a-zA-Z0-9_]+; QUESTION= [?]; SPECIALS= [:?"']; MULTICHAR = [:?]; -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_2) /ext/pdo pdo_sql_parser.c pdo_sql_parser.re
nlopess Wed Jan 3 22:05:25 2007 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/pdopdo_sql_parser.c pdo_sql_parser.re Log: MFH: fix infinite cycle #this was the infinite cycle that was bugging me in the gcov machine... http://cvs.php.net/viewvc.cgi/php-src/ext/pdo/pdo_sql_parser.c?r1=1.35.2.6.2.7&r2=1.35.2.6.2.8&diff_format=u Index: php-src/ext/pdo/pdo_sql_parser.c diff -u php-src/ext/pdo/pdo_sql_parser.c:1.35.2.6.2.7 php-src/ext/pdo/pdo_sql_parser.c:1.35.2.6.2.8 --- php-src/ext/pdo/pdo_sql_parser.c:1.35.2.6.2.7 Mon Jan 1 09:36:04 2007 +++ php-src/ext/pdo/pdo_sql_parser.cWed Jan 3 22:05:24 2007 @@ -1,4 +1,4 @@ -/* Generated by re2c 0.10.6 on Mon Dec 4 16:21:45 2006 */ +/* Generated by re2c 0.10.4 on Wed Jan 3 22:04:03 2007 */ #line 1 "ext/pdo/pdo_sql_parser.re" /* +--+ @@ -18,7 +18,7 @@ +--+ */ -/* $Id: pdo_sql_parser.c,v 1.35.2.6.2.7 2007/01/01 09:36:04 sebastian Exp $ */ +/* $Id: pdo_sql_parser.c,v 1.35.2.6.2.8 2007/01/03 22:05:24 nlopess Exp $ */ #include "php.h" #include "php_pdo_driver.h" @@ -31,14 +31,14 @@ #define RET(i) {s->cur = cursor; return i; } -#define YYCTYPE char +#define YYCTYPE unsigned char #define YYCURSORcursor -#define YYLIMIT s->lim +#define YYLIMIT cursor #define YYMARKERs->ptr #define YYFILL(n) typedef struct Scanner { - char*lim, *ptr, *cur, *tok; + char*ptr, *cur, *tok; } Scanner; static int scan(Scanner *s) @@ -263,7 +263,6 @@ ptr = *outquery; s.cur = inquery; - s.lim = inquery + inquery_len; /* phase 1: look for args */ while((t = scan(&s)) != PDO_PARSER_EOI) { @@ -578,7 +577,6 @@ ptr = *outquery; s.cur = inquery; - s.lim = inquery + inquery_len; while((t = scan(&s)) != PDO_PARSER_EOI) { if(t == PDO_PARSER_TEXT) { memcpy(ptr, s.tok, s.cur - s.tok); http://cvs.php.net/viewvc.cgi/php-src/ext/pdo/pdo_sql_parser.re?r1=1.28.2.4.2.5&r2=1.28.2.4.2.6&diff_format=u Index: php-src/ext/pdo/pdo_sql_parser.re diff -u php-src/ext/pdo/pdo_sql_parser.re:1.28.2.4.2.5 php-src/ext/pdo/pdo_sql_parser.re:1.28.2.4.2.6 --- php-src/ext/pdo/pdo_sql_parser.re:1.28.2.4.2.5 Tue Dec 5 18:04:59 2006 +++ php-src/ext/pdo/pdo_sql_parser.re Wed Jan 3 22:05:24 2007 @@ -2,7 +2,7 @@ +--+ | PHP Version 5| +--+ - | Copyright (c) 1997-2006 The PHP Group| + | Copyright (c) 1997-2007 The PHP Group| +--+ | This source file is subject to version 3.01 of the PHP license, | | that is bundled with this package in the file LICENSE, and is| @@ -16,7 +16,7 @@ +--+ */ -/* $Id: pdo_sql_parser.re,v 1.28.2.4.2.5 2006/12/05 18:04:59 iliaa Exp $ */ +/* $Id: pdo_sql_parser.re,v 1.28.2.4.2.6 2007/01/03 22:05:24 nlopess Exp $ */ #include "php.h" #include "php_pdo_driver.h" @@ -29,14 +29,14 @@ #define RET(i) {s->cur = cursor; return i; } -#define YYCTYPE char +#define YYCTYPE unsigned char #define YYCURSORcursor -#define YYLIMIT s->lim +#define YYLIMIT cursor #define YYMARKERs->ptr #define YYFILL(n) typedef struct Scanner { - char*lim, *ptr, *cur, *tok; + char*ptr, *cur, *tok; } Scanner; static int scan(Scanner *s) @@ -90,7 +90,6 @@ ptr = *outquery; s.cur = inquery; - s.lim = inquery + inquery_len; /* phase 1: look for args */ while((t = scan(&s)) != PDO_PARSER_EOI) { @@ -405,7 +404,6 @@ ptr = *outquery; s.cur = inquery; - s.lim = inquery + inquery_len; while((t = scan(&s)) != PDO_PARSER_EOI) { if(t == PDO_PARSER_TEXT) { memcpy(ptr, s.tok, s.cur - s.tok); -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_2) /ext/pdo pdo_sql_parser.c pdo_sql_parser.re
iliaa Sun Dec 3 23:27:44 2006 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/pdopdo_sql_parser.re pdo_sql_parser.c Log: Added missing check for mismatching number of tokens & bound params in prepared statement emulation. http://cvs.php.net/viewvc.cgi/php-src/ext/pdo/pdo_sql_parser.re?r1=1.28.2.4.2.2&r2=1.28.2.4.2.3&diff_format=u Index: php-src/ext/pdo/pdo_sql_parser.re diff -u php-src/ext/pdo/pdo_sql_parser.re:1.28.2.4.2.2 php-src/ext/pdo/pdo_sql_parser.re:1.28.2.4.2.3 --- php-src/ext/pdo/pdo_sql_parser.re:1.28.2.4.2.2 Thu Nov 23 14:41:35 2006 +++ php-src/ext/pdo/pdo_sql_parser.re Sun Dec 3 23:27:44 2006 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: pdo_sql_parser.re,v 1.28.2.4.2.2 2006/11/23 14:41:35 iliaa Exp $ */ +/* $Id: pdo_sql_parser.re,v 1.28.2.4.2.3 2006/12/03 23:27:44 iliaa Exp $ */ #include "php.h" #include "php_pdo_driver.h" @@ -132,7 +132,6 @@ goto clean_up; } - if (stmt->supports_placeholders == query_type && !stmt->named_rewrite_template) { /* query matches native syntax */ ret = 0; @@ -156,7 +155,13 @@ ret = -1; goto clean_up; } - + + if (params && bindno != zend_hash_num_elements(params) && stmt->supports_placeholders == PDO_PLACEHOLDER_NONE) { + pdo_raise_impl_error(stmt->dbh, stmt, "HY093", "number of bound variables does not match number of tokens" TSRMLS_CC); + ret = -1; + goto clean_up; + } + /* what are we going to do ? */ if (stmt->supports_placeholders == PDO_PLACEHOLDER_NONE) { http://cvs.php.net/viewvc.cgi/php-src/ext/pdo/pdo_sql_parser.c?r1=1.35.2.6.2.3&r2=1.35.2.6.2.4&diff_format=u Index: php-src/ext/pdo/pdo_sql_parser.c diff -u php-src/ext/pdo/pdo_sql_parser.c:1.35.2.6.2.3 php-src/ext/pdo/pdo_sql_parser.c:1.35.2.6.2.4 --- php-src/ext/pdo/pdo_sql_parser.c:1.35.2.6.2.3 Thu Nov 23 14:41:35 2006 +++ php-src/ext/pdo/pdo_sql_parser.cSun Dec 3 23:27:44 2006 @@ -1,4 +1,4 @@ -/* Generated by re2c 0.10.6 on Thu Nov 23 09:39:04 2006 */ +/* Generated by re2c 0.10.6 on Sun Dec 3 18:24:46 2006 */ #line 1 "ext/pdo/pdo_sql_parser.re" /* +--+ @@ -18,7 +18,7 @@ +--+ */ -/* $Id: pdo_sql_parser.c,v 1.35.2.6.2.3 2006/11/23 14:41:35 iliaa Exp $ */ +/* $Id: pdo_sql_parser.c,v 1.35.2.6.2.4 2006/12/03 23:27:44 iliaa Exp $ */ #include "php.h" #include "php_pdo_driver.h" @@ -352,7 +352,6 @@ goto clean_up; } - if (stmt->supports_placeholders == query_type && !stmt->named_rewrite_template) { /* query matches native syntax */ ret = 0; @@ -376,7 +375,13 @@ ret = -1; goto clean_up; } - + + if (params && bindno != zend_hash_num_elements(params) && stmt->supports_placeholders == PDO_PLACEHOLDER_NONE) { + pdo_raise_impl_error(stmt->dbh, stmt, "HY093", "number of bound variables does not match number of tokens" TSRMLS_CC); + ret = -1; + goto clean_up; + } + /* what are we going to do ? */ if (stmt->supports_placeholders == PDO_PLACEHOLDER_NONE) { -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_2) /ext/pdo pdo_sql_parser.c pdo_sql_parser.re
iliaa Thu Nov 23 14:41:35 2006 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/pdopdo_sql_parser.c pdo_sql_parser.re Log: Fixed a possible crash http://cvs.php.net/viewvc.cgi/php-src/ext/pdo/pdo_sql_parser.c?r1=1.35.2.6.2.2&r2=1.35.2.6.2.3&diff_format=u Index: php-src/ext/pdo/pdo_sql_parser.c diff -u php-src/ext/pdo/pdo_sql_parser.c:1.35.2.6.2.2 php-src/ext/pdo/pdo_sql_parser.c:1.35.2.6.2.3 --- php-src/ext/pdo/pdo_sql_parser.c:1.35.2.6.2.2 Sun Nov 12 17:55:44 2006 +++ php-src/ext/pdo/pdo_sql_parser.cThu Nov 23 14:41:35 2006 @@ -1,4 +1,4 @@ -/* Generated by re2c 0.10.6 on Sun Nov 12 12:53:54 2006 */ +/* Generated by re2c 0.10.6 on Thu Nov 23 09:39:04 2006 */ #line 1 "ext/pdo/pdo_sql_parser.re" /* +--+ @@ -18,7 +18,7 @@ +--+ */ -/* $Id: pdo_sql_parser.c,v 1.35.2.6.2.2 2006/11/12 17:55:44 iliaa Exp $ */ +/* $Id: pdo_sql_parser.c,v 1.35.2.6.2.3 2006/11/23 14:41:35 iliaa Exp $ */ #include "php.h" #include "php_pdo_driver.h" @@ -412,11 +412,14 @@ /* bork */ ret = -1; strcpy(stmt->error_code, stmt->dbh->error_code); - efree(buf); + if (buf) { + efree(buf); + } goto clean_up; } - efree(buf); - + if (buf) { + efree(buf); + } } else { pdo_raise_impl_error(stmt->dbh, stmt, "HY105", "Expected a stream resource" TSRMLS_CC); ret = -1; http://cvs.php.net/viewvc.cgi/php-src/ext/pdo/pdo_sql_parser.re?r1=1.28.2.4.2.1&r2=1.28.2.4.2.2&diff_format=u Index: php-src/ext/pdo/pdo_sql_parser.re diff -u php-src/ext/pdo/pdo_sql_parser.re:1.28.2.4.2.1 php-src/ext/pdo/pdo_sql_parser.re:1.28.2.4.2.2 --- php-src/ext/pdo/pdo_sql_parser.re:1.28.2.4.2.1 Sun Nov 12 17:49:19 2006 +++ php-src/ext/pdo/pdo_sql_parser.re Thu Nov 23 14:41:35 2006 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: pdo_sql_parser.re,v 1.28.2.4.2.1 2006/11/12 17:49:19 iliaa Exp $ */ +/* $Id: pdo_sql_parser.re,v 1.28.2.4.2.2 2006/11/23 14:41:35 iliaa Exp $ */ #include "php.h" #include "php_pdo_driver.h" @@ -192,11 +192,14 @@ /* bork */ ret = -1; strcpy(stmt->error_code, stmt->dbh->error_code); - efree(buf); + if (buf) { + efree(buf); + } goto clean_up; } - efree(buf); - + if (buf) { + efree(buf); + } } else { pdo_raise_impl_error(stmt->dbh, stmt, "HY105", "Expected a stream resource" TSRMLS_CC); ret = -1; -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_2) /ext/pdo pdo_sql_parser.c pdo_sql_parser.re
iliaa Sun Nov 12 17:49:20 2006 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/pdopdo_sql_parser.c pdo_sql_parser.re Log: Fixed a memory leak when named & positional params are being used in the same query. http://cvs.php.net/viewvc.cgi/php-src/ext/pdo/pdo_sql_parser.c?r1=1.35.2.6&r2=1.35.2.6.2.1&diff_format=u Index: php-src/ext/pdo/pdo_sql_parser.c diff -u php-src/ext/pdo/pdo_sql_parser.c:1.35.2.6 php-src/ext/pdo/pdo_sql_parser.c:1.35.2.6.2.1 --- php-src/ext/pdo/pdo_sql_parser.c:1.35.2.6 Wed Jan 25 16:35:23 2006 +++ php-src/ext/pdo/pdo_sql_parser.cSun Nov 12 17:49:19 2006 @@ -1,4 +1,4 @@ -/* Generated by re2c 0.9.11 on Wed Jan 25 11:31:13 2006 */ +/* Generated by re2c 0.10.6 on Sun Nov 12 12:48:44 2006 */ #line 1 "ext/pdo/pdo_sql_parser.re" /* +--+ @@ -18,7 +18,7 @@ +--+ */ -/* $Id: pdo_sql_parser.c,v 1.35.2.6 2006/01/25 16:35:23 iliaa Exp $ */ +/* $Id: pdo_sql_parser.c,v 1.35.2.6.2.1 2006/11/12 17:49:19 iliaa Exp $ */ #include "php.h" #include "php_pdo_driver.h" @@ -51,241 +51,271 @@ { static unsigned char yybm[] = { - 0, 162, 162, 162, 162, 162, 162, 162, - 162, 162, 162, 162, 162, 162, 162, 162, - 162, 162, 162, 162, 162, 162, 162, 162, - 162, 162, 162, 162, 162, 162, 162, 162, - 162, 162, 52, 162, 162, 162, 162, 196, - 162, 162, 162, 162, 162, 162, 162, 162, - 170, 170, 170, 170, 170, 170, 170, 170, - 170, 170, 244, 162, 162, 162, 162, 244, - 162, 170, 170, 170, 170, 170, 170, 170, - 170, 170, 170, 170, 170, 170, 170, 170, - 170, 170, 170, 170, 170, 170, 170, 170, - 170, 170, 170, 162, 2, 162, 162, 170, - 162, 170, 170, 170, 170, 170, 170, 170, - 170, 170, 170, 170, 170, 170, 170, 170, - 170, 170, 170, 170, 170, 170, 170, 170, - 170, 170, 170, 162, 162, 162, 162, 162, - 162, 162, 162, 162, 162, 162, 162, 162, - 162, 162, 162, 162, 162, 162, 162, 162, - 162, 162, 162, 162, 162, 162, 162, 162, - 162, 162, 162, 162, 162, 162, 162, 162, - 162, 162, 162, 162, 162, 162, 162, 162, - 162, 162, 162, 162, 162, 162, 162, 162, - 162, 162, 162, 162, 162, 162, 162, 162, - 162, 162, 162, 162, 162, 162, 162, 162, - 162, 162, 162, 162, 162, 162, 162, 162, - 162, 162, 162, 162, 162, 162, 162, 162, - 162, 162, 162, 162, 162, 162, 162, 162, - 162, 162, 162, 162, 162, 162, 162, 162, - 162, 162, 162, 162, 162, 162, 162, 162, - 162, 162, 162, 162, 162, 162, 162, 162, - 162, 162, 162, 162, 162, 162, 162, 162, - 162, 162, 162, 162, 162, 162, 162, 162, + 0, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 52, 162, 162, 162, 162, 196, + 162, 162, 162, 162, 162, 162, 162, 162, + 170, 170, 170, 170, 170, 170, 170, 170, + 170, 170, 244, 162, 162, 162, 162, 244, + 162, 170, 170, 170, 170, 170, 170, 170, + 170, 170, 170, 170, 170, 170, 170, 170, + 170, 170, 170, 170, 170, 170, 170, 170, + 170, 170, 170, 162, 2, 162, 162, 170, + 162, 170, 170, 170, 170, 170, 170, 170, + 170, 170, 170, 170, 170, 170, 170, 170, + 170, 170, 170, 170, 170, 170, 170, 170, + 170, 170, 170, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, }; #line 89 "ext/pdo/pdo_sql_parser.c" -{ - YYCTYPE yych; - unsigned int yyaccept = 0; - goto yy0; - ++YYCURSOR; -yy0: - if((YYLIMIT - YYCURSOR) < 3) YYFILL(3); - yych = *YYCURSOR; - if(yybm[0+yych] & 2) { - goto yy8; - } - if(yych <= 0x00)goto yy11; - i