sniper Thu Feb 24 12:50:21 2005 EDT Modified files: /php-src/ext/standard var_unserializer.c Log: - Generated with re2c 0.9.4
http://cvs.php.net/diff.php/php-src/ext/standard/var_unserializer.c?r1=1.56&r2=1.57&ty=u Index: php-src/ext/standard/var_unserializer.c diff -u php-src/ext/standard/var_unserializer.c:1.56 php-src/ext/standard/var_unserializer.c:1.57 --- php-src/ext/standard/var_unserializer.c:1.56 Thu Feb 24 05:58:16 2005 +++ php-src/ext/standard/var_unserializer.c Thu Feb 24 12:50:20 2005 @@ -1,5 +1,5 @@ -/* Generated by re2c 0.5 on Tue Feb 22 15:14:56 2005 */ -#line 1 "/php5/ext/standard/var_unserializer.re" +/* Generated by re2c 0.9.4 on Thu Feb 24 19:48:52 2005 */ +#line 1 "/usr/src/php/php5/ext/standard/var_unserializer.re" /* +----------------------------------------------------------------------+ | PHP Version 5 | @@ -18,7 +18,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: var_unserializer.c,v 1.56 2005/02/24 10:58:16 stas Exp $ */ +/* $Id: var_unserializer.c,v 1.57 2005/02/24 17:50:20 sniper Exp $ */ #include "php.h" #include "ext/standard/php_var.h" @@ -147,7 +147,7 @@ #define YYMARKER marker -#line 155 +#line 155 "/usr/src/php/php5/ext/standard/var_unserializer.re" @@ -353,6 +353,8 @@ + +#line 7 "<stdout>" { YYCTYPE yych; unsigned int yyaccept; @@ -432,7 +434,8 @@ goto yy16; } else { if(yych <= '}') goto yy14; - if(yych <= '\277') goto yy16; + if(yych <= 0xBF) goto yy16; + goto yy2; } } } @@ -443,9 +446,11 @@ yy3: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); if(yych == ':') goto yy87; + goto yy4; yy4: -#line 620 - { return 0; } +#line 621 "/usr/src/php/php5/ext/standard/var_unserializer.re" +{ return 0; } +#line 103 "<stdout>" yy5: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); if(yych == ':') goto yy81; @@ -481,41 +486,49 @@ yych = *(YYMARKER = ++YYCURSOR); if(yych == ':') goto yy17; goto yy4; -yy14: yych = *++YYCURSOR; +yy14: ++YYCURSOR; + goto yy15; yy15: -#line 614 - { +#line 615 "/usr/src/php/php5/ext/standard/var_unserializer.re" +{ /* this is the case where we have less data than planned */ php_error_docref(NULL TSRMLS_CC, E_NOTICE, "Unexpected end of serialized data"); return 0; /* not sure if it should be 0 or 1 here? */ } +#line 148 "<stdout>" yy16: yych = *++YYCURSOR; goto yy4; yy17: yych = *++YYCURSOR; if(yybm[0+yych] & 128) goto yy19; if(yych != '+') goto yy2; + goto yy18; yy18: yych = *++YYCURSOR; if(yybm[0+yych] & 128) goto yy19; goto yy2; yy19: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; + goto yy20; yy20: if(yybm[0+yych] & 128) goto yy19; if(yych != ':') goto yy2; + goto yy21; yy21: yych = *++YYCURSOR; if(yych != '"') goto yy2; -yy22: yych = *++YYCURSOR; + goto yy22; +yy22: ++YYCURSOR; + goto yy23; yy23: -#line 503 - { +#line 503 "/usr/src/php/php5/ext/standard/var_unserializer.re" +{ size_t len, len2, len3, maxlen; int elements; char *class_name; zend_class_entry *ce; zend_class_entry **pce; int incomplete_class = 0; + int custom_object = 0; -/* */ + zval *user_func; zval *retval_ptr; zval **args[1]; @@ -617,9 +630,11 @@ return object_common2(UNSERIALIZE_PASSTHRU, elements); } +#line 284 "<stdout>" yy24: yych = *++YYCURSOR; if(yych <= ','){ if(yych != '+') goto yy2; + goto yy25; } else { if(yych <= '-') goto yy25; if(yych <= '/') goto yy2; @@ -629,24 +644,30 @@ yy25: yych = *++YYCURSOR; if(yych <= '/') goto yy2; if(yych >= ':') goto yy2; + goto yy26; yy26: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; + goto yy27; yy27: if(yych <= '/') goto yy2; if(yych <= '9') goto yy26; if(yych >= ';') goto yy2; + goto yy28; yy28: yych = *++YYCURSOR; if(yych != '"') goto yy2; -yy29: yych = *++YYCURSOR; + goto yy29; +yy29: ++YYCURSOR; + goto yy30; yy30: -#line 495 - { +#line 495 "/usr/src/php/php5/ext/standard/var_unserializer.re" +{ INIT_PZVAL(*rval); return object_common2(UNSERIALIZE_PASSTHRU, object_common1(UNSERIALIZE_PASSTHRU, ZEND_STANDARD_CLASS_DEF_PTR)); } +#line 322 "<stdout>" yy31: yych = *++YYCURSOR; if(yych == '+') goto yy32; if(yych <= '/') goto yy2; @@ -655,18 +676,23 @@ yy32: yych = *++YYCURSOR; if(yych <= '/') goto yy2; if(yych >= ':') goto yy2; + goto yy33; yy33: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; + goto yy34; yy34: if(yych <= '/') goto yy2; if(yych <= '9') goto yy33; if(yych >= ';') goto yy2; + goto yy35; yy35: yych = *++YYCURSOR; if(yych != '{') goto yy2; -yy36: yych = *++YYCURSOR; + goto yy36; +yy36: ++YYCURSOR; + goto yy37; yy37: -#line 477 - { +#line 477 "/usr/src/php/php5/ext/standard/var_unserializer.re" +{ int elements = parse_iv(start + 2); *p = YYCURSOR; @@ -683,6 +709,7 @@ return finish_nested_data(UNSERIALIZE_PASSTHRU); } +#line 365 "<stdout>" yy38: yych = *++YYCURSOR; if(yych == '+') goto yy39; if(yych <= '/') goto yy2; @@ -691,18 +718,23 @@ yy39: yych = *++YYCURSOR; if(yych <= '/') goto yy2; if(yych >= ':') goto yy2; + goto yy40; yy40: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; + goto yy41; yy41: if(yych <= '/') goto yy2; if(yych <= '9') goto yy40; if(yych >= ';') goto yy2; + goto yy42; yy42: yych = *++YYCURSOR; if(yych != '"') goto yy2; -yy43: yych = *++YYCURSOR; + goto yy43; +yy43: ++YYCURSOR; + goto yy44; yy44: -#line 449 - { +#line 449 "/usr/src/php/php5/ext/standard/var_unserializer.re" +{ size_t len, maxlen; char *str; @@ -729,6 +761,7 @@ ZVAL_STRINGL(*rval, str, len, 1); return 1; } +#line 418 "<stdout>" yy45: yych = *++YYCURSOR; if(yych <= '/'){ if(yych <= ','){ @@ -746,6 +779,7 @@ goto yy48; } else { if(yych != 'N') goto yy2; + goto yy46; } } yy46: yych = *++YYCURSOR; @@ -758,6 +792,7 @@ } else { if(yych <= '9') goto yy50; if(yych != 'I') goto yy2; + goto yy48; } yy48: yych = *++YYCURSOR; if(yych == 'N') goto yy64; @@ -766,9 +801,11 @@ if(yych == '.') goto yy52; if(yych <= '/') goto yy2; if(yych >= ':') goto yy2; + goto yy50; yy50: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; + goto yy51; yy51: if(yych <= ':'){ if(yych <= '.'){ if(yych <= '-') goto yy2; @@ -791,13 +828,16 @@ yy52: yych = *++YYCURSOR; if(yych <= '/') goto yy2; if(yych >= ':') goto yy2; + goto yy53; yy53: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; + goto yy54; yy54: if(yych <= ';'){ if(yych <= '/') goto yy2; if(yych <= '9') goto yy53; if(yych <= ':') goto yy2; + goto yy55; } else { if(yych <= 'E'){ if(yych <= 'D') goto yy2; @@ -807,18 +847,21 @@ goto yy2; } } -yy55: yych = *++YYCURSOR; +yy55: ++YYCURSOR; + goto yy56; yy56: -#line 442 - { +#line 442 "/usr/src/php/php5/ext/standard/var_unserializer.re" +{ *p = YYCURSOR; INIT_PZVAL(*rval); ZVAL_DOUBLE(*rval, zend_strtod(start + 2, NULL)); return 1; } +#line 516 "<stdout>" yy57: yych = *++YYCURSOR; if(yych <= ','){ if(yych != '+') goto yy2; + goto yy58; } else { if(yych <= '-') goto yy58; if(yych <= '/') goto yy2; @@ -833,10 +876,12 @@ if(yych <= '-') goto yy61; if(yych <= '/') goto yy2; if(yych >= ':') goto yy2; + goto yy59; } yy59: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; + goto yy60; yy60: if(yych <= '/') goto yy2; if(yych <= '9') goto yy59; if(yych == ';') goto yy55; @@ -848,6 +893,7 @@ yy62: ++YYCURSOR; if((YYLIMIT - YYCURSOR) < 4) YYFILL(4); yych = *YYCURSOR; + goto yy63; yy63: if(yych <= ';'){ if(yych <= '/') goto yy2; if(yych <= '9') goto yy62; @@ -864,12 +910,15 @@ } yy64: yych = *++YYCURSOR; if(yych != 'F') goto yy2; + goto yy65; yy65: yych = *++YYCURSOR; if(yych != ';') goto yy2; -yy66: yych = *++YYCURSOR; + goto yy66; +yy66: ++YYCURSOR; + goto yy67; yy67: -#line 427 - { +#line 427 "/usr/src/php/php5/ext/standard/var_unserializer.re" +{ *p = YYCURSOR; INIT_PZVAL(*rval); @@ -883,12 +932,14 @@ return 1; } +#line 593 "<stdout>" yy68: yych = *++YYCURSOR; if(yych == 'N') goto yy65; goto yy2; yy69: yych = *++YYCURSOR; if(yych <= ','){ if(yych != '+') goto yy2; + goto yy70; } else { if(yych <= '-') goto yy70; if(yych <= '/') goto yy2; @@ -898,47 +949,59 @@ yy70: yych = *++YYCURSOR; if(yych <= '/') goto yy2; if(yych >= ':') goto yy2; + goto yy71; yy71: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; + goto yy72; yy72: if(yych <= '/') goto yy2; if(yych <= '9') goto yy71; if(yych != ';') goto yy2; -yy73: yych = *++YYCURSOR; + goto yy73; +yy73: ++YYCURSOR; + goto yy74; yy74: -#line 420 - { +#line 420 "/usr/src/php/php5/ext/standard/var_unserializer.re" +{ *p = YYCURSOR; INIT_PZVAL(*rval); ZVAL_LONG(*rval, parse_iv(start + 2)); return 1; } +#line 630 "<stdout>" yy75: yych = *++YYCURSOR; if(yych <= '/') goto yy2; if(yych >= '2') goto yy2; + goto yy76; yy76: yych = *++YYCURSOR; if(yych != ';') goto yy2; -yy77: yych = *++YYCURSOR; + goto yy77; +yy77: ++YYCURSOR; + goto yy78; yy78: -#line 413 - { +#line 413 "/usr/src/php/php5/ext/standard/var_unserializer.re" +{ *p = YYCURSOR; INIT_PZVAL(*rval); ZVAL_BOOL(*rval, parse_iv(start + 2)); return 1; } -yy79: yych = *++YYCURSOR; +#line 648 "<stdout>" +yy79: ++YYCURSOR; + goto yy80; yy80: -#line 406 - { +#line 406 "/usr/src/php/php5/ext/standard/var_unserializer.re" +{ *p = YYCURSOR; INIT_PZVAL(*rval); ZVAL_NULL(*rval); return 1; } +#line 659 "<stdout>" yy81: yych = *++YYCURSOR; if(yych <= ','){ if(yych != '+') goto yy2; + goto yy82; } else { if(yych <= '-') goto yy82; if(yych <= '/') goto yy2; @@ -948,16 +1011,20 @@ yy82: yych = *++YYCURSOR; if(yych <= '/') goto yy2; if(yych >= ':') goto yy2; + goto yy83; yy83: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; + goto yy84; yy84: if(yych <= '/') goto yy2; if(yych <= '9') goto yy83; if(yych != ';') goto yy2; -yy85: yych = *++YYCURSOR; + goto yy85; +yy85: ++YYCURSOR; + goto yy86; yy86: -#line 383 - { +#line 383 "/usr/src/php/php5/ext/standard/var_unserializer.re" +{ int id; *p = YYCURSOR; @@ -979,9 +1046,11 @@ return 1; } +#line 709 "<stdout>" yy87: yych = *++YYCURSOR; if(yych <= ','){ if(yych != '+') goto yy2; + goto yy88; } else { if(yych <= '-') goto yy88; if(yych <= '/') goto yy2; @@ -991,16 +1060,20 @@ yy88: yych = *++YYCURSOR; if(yych <= '/') goto yy2; if(yych >= ':') goto yy2; + goto yy89; yy89: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; + goto yy90; yy90: if(yych <= '/') goto yy2; if(yych <= '9') goto yy89; if(yych != ';') goto yy2; -yy91: yych = *++YYCURSOR; + goto yy91; +yy91: ++YYCURSOR; + goto yy92; yy92: -#line 362 - { +#line 362 "/usr/src/php/php5/ext/standard/var_unserializer.re" +{ int id; *p = YYCURSOR; @@ -1020,8 +1093,9 @@ return 1; } +#line 757 "<stdout>" } -#line 622 +#line 623 "/usr/src/php/php5/ext/standard/var_unserializer.re" return 0;
-- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php