helly Sun Sep 12 08:45:01 2004 EDT Modified files: /php-src/ext/standard var_unserializer.c Log: - Moe changed from .re to .c http://cvs.php.net/diff.php/php-src/ext/standard/var_unserializer.c?r1=1.42&r2=1.43&ty=u Index: php-src/ext/standard/var_unserializer.c diff -u php-src/ext/standard/var_unserializer.c:1.42 php-src/ext/standard/var_unserializer.c:1.43 --- php-src/ext/standard/var_unserializer.c:1.42 Sun Sep 12 07:51:13 2004 +++ php-src/ext/standard/var_unserializer.c Sun Sep 12 08:45:01 2004 @@ -1,4 +1,4 @@ -/* Generated by re2c 0.9.4 on Sun Sep 12 13:42:52 2004 */ +/* Generated by re2c 0.9.4 on Sun Sep 12 14:43:48 2004 */ #line 1 "/usr/src/php-cvs/ext/standard/var_unserializer.re" /* +----------------------------------------------------------------------+ @@ -18,7 +18,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: var_unserializer.c,v 1.42 2004/09/12 11:51:13 helly Exp $ */ +/* $Id: var_unserializer.c,v 1.43 2004/09/12 12:45:01 helly Exp $ */ #include "php.h" #include "ext/standard/php_var.h" @@ -204,11 +204,21 @@ case IS_STRING: zend_hash_update(ht, Z_STRVAL_P(key), Z_STRLEN_P(key) + 1, &data, sizeof(data), NULL); break; - + default: + zval_dtor(key); + FREE_ZVAL(key); + zval_dtor(data); + FREE_ZVAL(data); + return 0; } zval_dtor(key); FREE_ZVAL(key); + + if (elements && *(*p-1) != ';' && *(*p-1) != '}') { + (*p)--; + return 0; + } } return 1; @@ -368,7 +378,7 @@ if(yych == ':') goto yy87; goto yy4; yy4: -#line 522 "/usr/src/php-cvs/ext/standard/var_unserializer.re" +#line 532 "/usr/src/php-cvs/ext/standard/var_unserializer.re" { return 0; } #line 102 "<stdout>" yy5: yyaccept = 0; @@ -409,7 +419,7 @@ yy14: ++YYCURSOR; goto yy15; yy15: -#line 516 "/usr/src/php-cvs/ext/standard/var_unserializer.re" +#line 526 "/usr/src/php-cvs/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"); @@ -438,7 +448,7 @@ yy22: ++YYCURSOR; goto yy23; yy23: -#line 423 "/usr/src/php-cvs/ext/standard/var_unserializer.re" +#line 433 "/usr/src/php-cvs/ext/standard/var_unserializer.re" { size_t len, len2, maxlen; int elements; @@ -560,7 +570,7 @@ yy29: ++YYCURSOR; goto yy30; yy30: -#line 415 "/usr/src/php-cvs/ext/standard/var_unserializer.re" +#line 425 "/usr/src/php-cvs/ext/standard/var_unserializer.re" { INIT_PZVAL(*rval); @@ -592,7 +602,7 @@ yy36: ++YYCURSOR; goto yy37; yy37: -#line 397 "/usr/src/php-cvs/ext/standard/var_unserializer.re" +#line 407 "/usr/src/php-cvs/ext/standard/var_unserializer.re" { int elements = parse_iv(start + 2); @@ -634,7 +644,7 @@ yy43: ++YYCURSOR; goto yy44; yy44: -#line 369 "/usr/src/php-cvs/ext/standard/var_unserializer.re" +#line 379 "/usr/src/php-cvs/ext/standard/var_unserializer.re" { size_t len, maxlen; char *str; @@ -751,7 +761,7 @@ yy55: ++YYCURSOR; goto yy56; yy56: -#line 362 "/usr/src/php-cvs/ext/standard/var_unserializer.re" +#line 372 "/usr/src/php-cvs/ext/standard/var_unserializer.re" { *p = YYCURSOR; INIT_PZVAL(*rval); @@ -818,7 +828,7 @@ yy66: ++YYCURSOR; goto yy67; yy67: -#line 345 "/usr/src/php-cvs/ext/standard/var_unserializer.re" +#line 355 "/usr/src/php-cvs/ext/standard/var_unserializer.re" { *p = YYCURSOR; INIT_PZVAL(*rval); @@ -864,7 +874,7 @@ yy73: ++YYCURSOR; goto yy74; yy74: -#line 338 "/usr/src/php-cvs/ext/standard/var_unserializer.re" +#line 348 "/usr/src/php-cvs/ext/standard/var_unserializer.re" { *p = YYCURSOR; INIT_PZVAL(*rval); @@ -882,7 +892,7 @@ yy77: ++YYCURSOR; goto yy78; yy78: -#line 331 "/usr/src/php-cvs/ext/standard/var_unserializer.re" +#line 341 "/usr/src/php-cvs/ext/standard/var_unserializer.re" { *p = YYCURSOR; INIT_PZVAL(*rval); @@ -893,7 +903,7 @@ yy79: ++YYCURSOR; goto yy80; yy80: -#line 324 "/usr/src/php-cvs/ext/standard/var_unserializer.re" +#line 334 "/usr/src/php-cvs/ext/standard/var_unserializer.re" { *p = YYCURSOR; INIT_PZVAL(*rval); @@ -926,7 +936,7 @@ yy85: ++YYCURSOR; goto yy86; yy86: -#line 303 "/usr/src/php-cvs/ext/standard/var_unserializer.re" +#line 313 "/usr/src/php-cvs/ext/standard/var_unserializer.re" { int id; @@ -973,7 +983,7 @@ yy91: ++YYCURSOR; goto yy92; yy92: -#line 282 "/usr/src/php-cvs/ext/standard/var_unserializer.re" +#line 292 "/usr/src/php-cvs/ext/standard/var_unserializer.re" { int id; @@ -996,7 +1006,7 @@ } #line 737 "<stdout>" } -#line 524 "/usr/src/php-cvs/ext/standard/var_unserializer.re" +#line 534 "/usr/src/php-cvs/ext/standard/var_unserializer.re" return 0;
-- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php