sniper Thu Apr 14 18:40:29 2005 EDT
Modified files: (Branch: PHP_5_0)
/php-src/ext/standard url_scanner_ex.c var_unserializer.c
Log:
- Regenerated with re2c 0.9.6 (fixes severe bugs)
http://cvs.php.net/diff.php/php-src/ext/standard/url_scanner_ex.c?r1=1.86.2.3&r2=1.86.2.4&ty=u
Index: php-src/ext/standard/url_scanner_ex.c
diff -u php-src/ext/standard/url_scanner_ex.c:1.86.2.3
php-src/ext/standard/url_scanner_ex.c:1.86.2.4
--- php-src/ext/standard/url_scanner_ex.c:1.86.2.3 Fri Apr 8 16:12:56 2005
+++ php-src/ext/standard/url_scanner_ex.c Thu Apr 14 18:40:28 2005
@@ -1,4 +1,4 @@
-/* Generated by re2c 0.9.4 on Mon Apr 4 22:38:22 2005 */
+/* Generated by re2c 0.9.6 on Fri Apr 15 01:39:15 2005 */
#line 1 "/usr/src/php/php_5_0/ext/standard/url_scanner_ex.re"
/*
+----------------------------------------------------------------------+
@@ -147,11 +147,13 @@
128, 128, 128, 128, 128, 128, 128, 128,
};
goto yy0;
-yy1: ++YYCURSOR;
+ ++YYCURSOR;
yy0:
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
- if(yybm[0+yych] & 128) goto yy8;
+ if(yybm[0+yych] & 128) {
+ goto yy8;
+ }
if(yych <= '9') goto yy6;
if(yych >= ';') goto yy4;
goto yy2;
@@ -160,29 +162,31 @@
yy3:
#line 113 "/usr/src/php/php_5_0/ext/standard/url_scanner_ex.re"
{ smart_str_append(dest, url); return; }
-#line 59 "<stdout>"
+#line 61 "<stdout>"
yy4: ++YYCURSOR;
goto yy5;
yy5:
#line 114 "/usr/src/php/php_5_0/ext/standard/url_scanner_ex.re"
{ sep = separator; goto scan; }
-#line 65 "<stdout>"
+#line 67 "<stdout>"
yy6: ++YYCURSOR;
goto yy7;
yy7:
#line 115 "/usr/src/php/php_5_0/ext/standard/url_scanner_ex.re"
{ bash = p - 1; goto done; }
-#line 71 "<stdout>"
+#line 73 "<stdout>"
yy8: ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
goto yy9;
-yy9: if(yybm[0+yych] & 128) goto yy8;
+yy9: if(yybm[0+yych] & 128) {
+ goto yy8;
+ }
goto yy10;
yy10:
#line 116 "/usr/src/php/php_5_0/ext/standard/url_scanner_ex.re"
{ goto scan; }
-#line 82 "<stdout>"
+#line 86 "<stdout>"
}
#line 117 "/usr/src/php/php_5_0/ext/standard/url_scanner_ex.re"
@@ -353,7 +357,7 @@
state_plain:
start = YYCURSOR;
-#line 86 "<stdout>"
+#line 90 "<stdout>"
{
YYCTYPE yych;
unsigned int yyaccept;
@@ -392,28 +396,32 @@
128, 128, 128, 128, 128, 128, 128, 128,
};
goto yy11;
-yy12: ++YYCURSOR;
+ ++YYCURSOR;
yy11:
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
- if(yybm[0+yych] & 128) goto yy15;
+ if(yybm[0+yych] & 128) {
+ goto yy15;
+ }
goto yy13;
yy13: ++YYCURSOR;
goto yy14;
yy14:
#line 285 "/usr/src/php/php_5_0/ext/standard/url_scanner_ex.re"
{ passthru(STD_ARGS); STATE = STATE_TAG; goto state_tag; }
-#line 136 "<stdout>"
+#line 142 "<stdout>"
yy15: ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
goto yy16;
-yy16: if(yybm[0+yych] & 128) goto yy15;
+yy16: if(yybm[0+yych] & 128) {
+ goto yy15;
+ }
goto yy17;
yy17:
#line 286 "/usr/src/php/php_5_0/ext/standard/url_scanner_ex.re"
{ passthru(STD_ARGS); goto state_plain; }
-#line 147 "<stdout>"
+#line 155 "<stdout>"
}
#line 287 "/usr/src/php/php_5_0/ext/standard/url_scanner_ex.re"
@@ -421,7 +429,7 @@
state_tag:
start = YYCURSOR;
-#line 151 "<stdout>"
+#line 159 "<stdout>"
{
YYCTYPE yych;
unsigned int yyaccept;
@@ -460,7 +468,7 @@
0, 0, 0, 0, 0, 0, 0, 0,
};
goto yy18;
-yy19: ++YYCURSOR;
+ ++YYCURSOR;
yy18:
if((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
yych = *YYCURSOR;
@@ -475,18 +483,20 @@
yy21:
#line 292 "/usr/src/php/php_5_0/ext/standard/url_scanner_ex.re"
{ handle_tag(STD_ARGS); /* Sets STATE */; passthru(STD_ARGS); if (STATE ==
STATE_PLAIN) goto state_plain; else goto state_next_arg; }
-#line 204 "<stdout>"
+#line 212 "<stdout>"
yy22: ++YYCURSOR;
goto yy23;
yy23:
#line 293 "/usr/src/php/php_5_0/ext/standard/url_scanner_ex.re"
{ passthru(STD_ARGS); goto state_plain_begin; }
-#line 210 "<stdout>"
+#line 218 "<stdout>"
yy24: ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
goto yy25;
-yy25: if(yybm[0+yych] & 128) goto yy24;
+yy25: if(yybm[0+yych] & 128) {
+ goto yy24;
+ }
goto yy21;
}
#line 294 "/usr/src/php/php_5_0/ext/standard/url_scanner_ex.re"
@@ -498,7 +508,7 @@
state_next_arg:
start = YYCURSOR;
-#line 221 "<stdout>"
+#line 231 "<stdout>"
{
YYCTYPE yych;
unsigned int yyaccept;
@@ -537,7 +547,7 @@
0, 0, 0, 0, 0, 0, 0, 0,
};
goto yy26;
-yy27: ++YYCURSOR;
+ ++YYCURSOR;
yy26:
if((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
yych = *YYCURSOR;
@@ -565,31 +575,33 @@
yy29:
#line 302 "/usr/src/php/php_5_0/ext/standard/url_scanner_ex.re"
{ passthru(STD_ARGS); handle_form(STD_ARGS); goto state_plain_begin; }
-#line 288 "<stdout>"
+#line 298 "<stdout>"
yy30: ++YYCURSOR;
yych = *YYCURSOR;
goto yy37;
yy31:
#line 303 "/usr/src/php/php_5_0/ext/standard/url_scanner_ex.re"
{ passthru(STD_ARGS); goto state_next_arg; }
-#line 294 "<stdout>"
+#line 304 "<stdout>"
yy32: ++YYCURSOR;
goto yy33;
yy33:
#line 304 "/usr/src/php/php_5_0/ext/standard/url_scanner_ex.re"
{ --YYCURSOR; STATE = STATE_ARG; goto state_arg; }
-#line 300 "<stdout>"
+#line 310 "<stdout>"
yy34: ++YYCURSOR;
goto yy35;
yy35:
#line 305 "/usr/src/php/php_5_0/ext/standard/url_scanner_ex.re"
{ passthru(STD_ARGS); goto state_plain_begin; }
-#line 306 "<stdout>"
+#line 316 "<stdout>"
yy36: ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
goto yy37;
-yy37: if(yybm[0+yych] & 128) goto yy36;
+yy37: if(yybm[0+yych] & 128) {
+ goto yy36;
+ }
goto yy31;
}
#line 306 "/usr/src/php/php_5_0/ext/standard/url_scanner_ex.re"
@@ -598,7 +610,7 @@
state_arg:
start = YYCURSOR;
-#line 317 "<stdout>"
+#line 329 "<stdout>"
{
YYCTYPE yych;
unsigned int yyaccept;
@@ -637,7 +649,7 @@
0, 0, 0, 0, 0, 0, 0, 0,
};
goto yy38;
-yy39: ++YYCURSOR;
+ ++YYCURSOR;
yy38:
if((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
yych = *YYCURSOR;
@@ -652,18 +664,20 @@
yy41:
#line 311 "/usr/src/php/php_5_0/ext/standard/url_scanner_ex.re"
{ passthru(STD_ARGS); handle_arg(STD_ARGS); STATE = STATE_BEFORE_VAL; goto
state_before_val; }
-#line 370 "<stdout>"
+#line 382 "<stdout>"
yy42: ++YYCURSOR;
goto yy43;
yy43:
#line 312 "/usr/src/php/php_5_0/ext/standard/url_scanner_ex.re"
{ passthru(STD_ARGS); STATE = STATE_NEXT_ARG; goto state_next_arg; }
-#line 376 "<stdout>"
+#line 388 "<stdout>"
yy44: ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
goto yy45;
-yy45: if(yybm[0+yych] & 128) goto yy44;
+yy45: if(yybm[0+yych] & 128) {
+ goto yy44;
+ }
goto yy41;
}
#line 313 "/usr/src/php/php_5_0/ext/standard/url_scanner_ex.re"
@@ -672,7 +686,7 @@
state_before_val:
start = YYCURSOR;
-#line 387 "<stdout>"
+#line 401 "<stdout>"
{
YYCTYPE yych;
unsigned int yyaccept;
@@ -711,7 +725,7 @@
0, 0, 0, 0, 0, 0, 0, 0,
};
goto yy46;
-yy47: ++YYCURSOR;
+ ++YYCURSOR;
yy46:
if((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
yych = *YYCURSOR;
@@ -726,21 +740,23 @@
yy49:
#line 319 "/usr/src/php/php_5_0/ext/standard/url_scanner_ex.re"
{ --YYCURSOR; goto state_next_arg_begin; }
-#line 441 "<stdout>"
+#line 455 "<stdout>"
yy50: ++YYCURSOR;
yych = *YYCURSOR;
goto yy54;
yy51:
#line 318 "/usr/src/php/php_5_0/ext/standard/url_scanner_ex.re"
{ passthru(STD_ARGS); STATE = STATE_VAL; goto state_val; }
-#line 447 "<stdout>"
+#line 461 "<stdout>"
yy52: yych = *++YYCURSOR;
goto yy49;
yy53: ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
goto yy54;
-yy54: if(yybm[0+yych] & 128) goto yy53;
+yy54: if(yybm[0+yych] & 128) {
+ goto yy53;
+ }
goto yy51;
yy55: ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
@@ -761,7 +777,7 @@
state_val:
start = YYCURSOR;
-#line 472 "<stdout>"
+#line 488 "<stdout>"
{
YYCTYPE yych;
unsigned int yyaccept;
@@ -800,7 +816,7 @@
248, 248, 248, 248, 248, 248, 248, 248,
};
goto yy58;
-yy59: ++YYCURSOR;
+ ++YYCURSOR;
yy58:
if((YYLIMIT - YYCURSOR) < 3) YYFILL(3);
yych = *YYCURSOR;
@@ -828,7 +844,7 @@
yy61:
#line 328 "/usr/src/php/php_5_0/ext/standard/url_scanner_ex.re"
{ handle_val(STD_ARGS, 0, '\0'); goto state_next_arg_begin; }
-#line 539 "<stdout>"
+#line 555 "<stdout>"
yy62: yyaccept = 0;
yych = *(YYMARKER = ++YYCURSOR);
goto yy69;
@@ -839,35 +855,43 @@
yy65:
#line 329 "/usr/src/php/php_5_0/ext/standard/url_scanner_ex.re"
{ passthru(STD_ARGS); goto state_next_arg_begin; }
-#line 550 "<stdout>"
+#line 566 "<stdout>"
yy66: ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
goto yy67;
-yy67: if(yybm[0+yych] & 8) goto yy66;
+yy67: if(yybm[0+yych] & 8) {
+ goto yy66;
+ }
goto yy61;
yy68: yyaccept = 0;
YYMARKER = ++YYCURSOR;
- if(YYLIMIT == YYCURSOR) YYFILL(1);
+ if((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
yych = *YYCURSOR;
goto yy69;
-yy69: if(yybm[0+yych] & 16) goto yy68;
+yy69: if(yybm[0+yych] & 16) {
+ goto yy68;
+ }
if(yych <= '&') goto yy72;
if(yych >= '(') goto yy61;
goto yy70;
yy70: ++YYCURSOR;
- if(yybm[0+(yych = *YYCURSOR)] & 8) yych = *YYCURSOR;
- goto yy66;
+ if(yybm[0+(yych = *YYCURSOR)] & 8) {
+ yych = *YYCURSOR;
+ goto yy66;
+ }
goto yy71;
yy71:
#line 327 "/usr/src/php/php_5_0/ext/standard/url_scanner_ex.re"
{ handle_val(STD_ARGS, 1, '\''); goto state_next_arg_begin; }
-#line 573 "<stdout>"
+#line 595 "<stdout>"
yy72: ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
goto yy73;
-yy73: if(yybm[0+yych] & 32) goto yy72;
+yy73: if(yybm[0+yych] & 32) {
+ goto yy72;
+ }
if(yych <= '=') goto yy75;
goto yy74;
yy74: YYCURSOR = YYMARKER;
@@ -878,26 +902,32 @@
goto yy71;
yy76: yyaccept = 0;
YYMARKER = ++YYCURSOR;
- if(YYLIMIT == YYCURSOR) YYFILL(1);
+ if((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
yych = *YYCURSOR;
goto yy77;
-yy77: if(yybm[0+yych] & 64) goto yy76;
+yy77: if(yybm[0+yych] & 64) {
+ goto yy76;
+ }
if(yych <= '!') goto yy80;
if(yych >= '#') goto yy61;
goto yy78;
yy78: ++YYCURSOR;
- if(yybm[0+(yych = *YYCURSOR)] & 8) yych = *YYCURSOR;
- goto yy66;
+ if(yybm[0+(yych = *YYCURSOR)] & 8) {
+ yych = *YYCURSOR;
+ goto yy66;
+ }
goto yy79;
yy79:
#line 326 "/usr/src/php/php_5_0/ext/standard/url_scanner_ex.re"
{ handle_val(STD_ARGS, 1, '"'); goto state_next_arg_begin; }
-#line 603 "<stdout>"
+#line 631 "<stdout>"
yy80: ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
goto yy81;
-yy81: if(yybm[0+yych] & 128) goto yy80;
+yy81: if(yybm[0+yych] & 128) {
+ goto yy80;
+ }
if(yych >= '>') goto yy74;
goto yy82;
yy82: ++YYCURSOR;
http://cvs.php.net/diff.php/php-src/ext/standard/var_unserializer.c?r1=1.38.2.13&r2=1.38.2.14&ty=u
Index: php-src/ext/standard/var_unserializer.c
diff -u php-src/ext/standard/var_unserializer.c:1.38.2.13
php-src/ext/standard/var_unserializer.c:1.38.2.14
--- php-src/ext/standard/var_unserializer.c:1.38.2.13 Wed Mar 9 20:58:13 2005
+++ php-src/ext/standard/var_unserializer.c Thu Apr 14 18:40:28 2005
@@ -1,4 +1,4 @@
-/* Generated by re2c 0.9.4 on Thu Mar 10 02:54:37 2005 */
+/* Generated by re2c 0.9.6 on Fri Apr 15 01:39:24 2005 */
#line 1 "/usr/src/php/php_5_0/ext/standard/var_unserializer.re"
/*
+----------------------------------------------------------------------+
@@ -18,7 +18,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: var_unserializer.c,v 1.38.2.13 2005/03/10 01:58:13 helly Exp $ */
+/* $Id: var_unserializer.c,v 1.38.2.14 2005/04/14 22:40:28 sniper Exp $ */
#include "php.h"
#include "ext/standard/php_var.h"
@@ -366,7 +366,7 @@
0, 0, 0, 0, 0, 0, 0, 0,
};
goto yy0;
-yy1: ++YYCURSOR;
+ ++YYCURSOR;
yy0:
if((YYLIMIT - YYCURSOR) < 7) YYFILL(7);
yych = *YYCURSOR;
@@ -471,17 +471,23 @@
yy16: yych = *++YYCURSOR;
goto yy4;
yy17: yych = *++YYCURSOR;
- if(yybm[0+yych] & 128) goto yy19;
+ if(yybm[0+yych] & 128) {
+ goto yy19;
+ }
if(yych != '+') goto yy2;
goto yy18;
yy18: yych = *++YYCURSOR;
- if(yybm[0+yych] & 128) goto yy19;
+ if(yybm[0+yych] & 128) {
+ goto yy19;
+ }
goto yy2;
yy19: ++YYCURSOR;
- if(YYLIMIT == YYCURSOR) YYFILL(1);
+ if((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
yych = *YYCURSOR;
goto yy20;
-yy20: if(yybm[0+yych] & 128) goto yy19;
+yy20: if(yybm[0+yych] & 128) {
+ goto yy19;
+ }
if(yych != ':') goto yy2;
goto yy21;
yy21: yych = *++YYCURSOR;
@@ -590,7 +596,7 @@
return object_common2(UNSERIALIZE_PASSTHRU, elements);
}
-#line 271 "<stdout>"
+#line 277 "<stdout>"
yy24: yych = *++YYCURSOR;
if(yych <= ','){
if(yych != '+') goto yy2;
@@ -606,7 +612,7 @@
if(yych >= ':') goto yy2;
goto yy26;
yy26: ++YYCURSOR;
- if(YYLIMIT == YYCURSOR) YYFILL(1);
+ if((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
yych = *YYCURSOR;
goto yy27;
yy27: if(yych <= '/') goto yy2;
@@ -627,7 +633,7 @@
return object_common2(UNSERIALIZE_PASSTHRU,
object_common1(UNSERIALIZE_PASSTHRU,
ZEND_STANDARD_CLASS_DEF_PTR));
}
-#line 309 "<stdout>"
+#line 315 "<stdout>"
yy31: yych = *++YYCURSOR;
if(yych == '+') goto yy32;
if(yych <= '/') goto yy2;
@@ -638,7 +644,7 @@
if(yych >= ':') goto yy2;
goto yy33;
yy33: ++YYCURSOR;
- if(YYLIMIT == YYCURSOR) YYFILL(1);
+ if((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
yych = *YYCURSOR;
goto yy34;
yy34: if(yych <= '/') goto yy2;
@@ -677,7 +683,7 @@
return finish_nested_data(UNSERIALIZE_PASSTHRU);
}
-#line 360 "<stdout>"
+#line 366 "<stdout>"
yy38: yych = *++YYCURSOR;
if(yych == '+') goto yy39;
if(yych <= '/') goto yy2;
@@ -688,7 +694,7 @@
if(yych >= ':') goto yy2;
goto yy40;
yy40: ++YYCURSOR;
- if(YYLIMIT == YYCURSOR) YYFILL(1);
+ if((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
yych = *YYCURSOR;
goto yy41;
yy41: if(yych <= '/') goto yy2;
@@ -729,7 +735,7 @@
ZVAL_STRINGL(*rval, str, len, 1);
return 1;
}
-#line 413 "<stdout>"
+#line 419 "<stdout>"
yy45: yych = *++YYCURSOR;
if(yych <= '/'){
if(yych <= ','){
@@ -771,7 +777,7 @@
if(yych >= ':') goto yy2;
goto yy50;
yy50: ++YYCURSOR;
- if(YYLIMIT == YYCURSOR) YYFILL(1);
+ if((YYLIMIT - YYCURSOR) < 4) YYFILL(4);
yych = *YYCURSOR;
goto yy51;
yy51: if(yych <= ':'){
@@ -798,7 +804,7 @@
if(yych >= ':') goto yy2;
goto yy53;
yy53: ++YYCURSOR;
- if(YYLIMIT == YYCURSOR) YYFILL(1);
+ if((YYLIMIT - YYCURSOR) < 4) YYFILL(4);
yych = *YYCURSOR;
goto yy54;
yy54: if(yych <= ';'){
@@ -825,7 +831,7 @@
ZVAL_DOUBLE(*rval, zend_strtod((const char *)start + 2, NULL));
return 1;
}
-#line 511 "<stdout>"
+#line 517 "<stdout>"
yy57: yych = *++YYCURSOR;
if(yych <= ','){
if(yych != '+') goto yy2;
@@ -900,7 +906,7 @@
return 1;
}
-#line 588 "<stdout>"
+#line 594 "<stdout>"
yy68: yych = *++YYCURSOR;
if(yych == 'N') goto yy65;
goto yy2;
@@ -936,7 +942,7 @@
ZVAL_LONG(*rval, parse_iv(start + 2));
return 1;
}
-#line 625 "<stdout>"
+#line 631 "<stdout>"
yy75: yych = *++YYCURSOR;
if(yych <= '/') goto yy2;
if(yych >= '2') goto yy2;
@@ -954,7 +960,7 @@
ZVAL_BOOL(*rval, parse_iv(start + 2));
return 1;
}
-#line 643 "<stdout>"
+#line 649 "<stdout>"
yy79: ++YYCURSOR;
goto yy80;
yy80:
@@ -965,7 +971,7 @@
ZVAL_NULL(*rval);
return 1;
}
-#line 654 "<stdout>"
+#line 660 "<stdout>"
yy81: yych = *++YYCURSOR;
if(yych <= ','){
if(yych != '+') goto yy2;
@@ -1014,7 +1020,7 @@
return 1;
}
-#line 704 "<stdout>"
+#line 710 "<stdout>"
yy87: yych = *++YYCURSOR;
if(yych <= ','){
if(yych != '+') goto yy2;
@@ -1061,7 +1067,7 @@
return 1;
}
-#line 752 "<stdout>"
+#line 758 "<stdout>"
}
#line 591 "/usr/src/php/php_5_0/ext/standard/var_unserializer.re"
--
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php