sniper Tue Mar 1 04:26:29 2005 EDT Modified files: /php-src/ext/standard var_unserializer.c Log: update http://cvs.php.net/diff.php/php-src/ext/standard/var_unserializer.c?r1=1.58&r2=1.59&ty=u Index: php-src/ext/standard/var_unserializer.c diff -u php-src/ext/standard/var_unserializer.c:1.58 php-src/ext/standard/var_unserializer.c:1.59 --- php-src/ext/standard/var_unserializer.c:1.58 Sun Feb 27 06:30:41 2005 +++ php-src/ext/standard/var_unserializer.c Tue Mar 1 04:26:28 2005 @@ -1,4 +1,4 @@ -/* Generated by re2c 0.9.4 on Thu Feb 24 19:48:52 2005 */ +/* Generated by re2c 0.9.4 on Tue Mar 1 03:49:26 2005 */ #line 1 "/usr/src/php/php5/ext/standard/var_unserializer.re" /* +----------------------------------------------------------------------+ @@ -18,7 +18,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: var_unserializer.c,v 1.58 2005/02/27 11:30:41 stas Exp $ */ +/* $Id: var_unserializer.c,v 1.59 2005/03/01 09:26:28 sniper Exp $ */ #include "php.h" #include "ext/standard/php_var.h" @@ -448,7 +448,7 @@ if(yych == ':') goto yy87; goto yy4; yy4: -#line 621 "/usr/src/php/php5/ext/standard/var_unserializer.re" +#line 625 "/usr/src/php/php5/ext/standard/var_unserializer.re" { return 0; } #line 103 "<stdout>" yy5: yyaccept = 0; @@ -489,7 +489,7 @@ yy14: ++YYCURSOR; goto yy15; yy15: -#line 615 "/usr/src/php/php5/ext/standard/var_unserializer.re" +#line 619 "/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"); @@ -518,7 +518,7 @@ yy22: ++YYCURSOR; goto yy23; yy23: -#line 503 "/usr/src/php/php5/ext/standard/var_unserializer.re" +#line 507 "/usr/src/php/php5/ext/standard/var_unserializer.re" { size_t len, len2, len3, maxlen; int elements; @@ -659,7 +659,7 @@ yy29: ++YYCURSOR; goto yy30; yy30: -#line 495 "/usr/src/php/php5/ext/standard/var_unserializer.re" +#line 499 "/usr/src/php/php5/ext/standard/var_unserializer.re" { INIT_PZVAL(*rval); @@ -697,6 +697,10 @@ *p = YYCURSOR; + if (elements < 0) { + return 0; + } + INIT_PZVAL(*rval); Z_TYPE_PP(rval) = IS_ARRAY; ALLOC_HASHTABLE(Z_ARRVAL_PP(rval)); @@ -709,7 +713,7 @@ return finish_nested_data(UNSERIALIZE_PASSTHRU); } -#line 365 "<stdout>" +#line 369 "<stdout>" yy38: yych = *++YYCURSOR; if(yych == '+') goto yy39; if(yych <= '/') goto yy2; @@ -761,7 +765,7 @@ ZVAL_STRINGL(*rval, str, len, 1); return 1; } -#line 418 "<stdout>" +#line 422 "<stdout>" yy45: yych = *++YYCURSOR; if(yych <= '/'){ if(yych <= ','){ @@ -857,7 +861,7 @@ ZVAL_DOUBLE(*rval, zend_strtod(start + 2, NULL)); return 1; } -#line 516 "<stdout>" +#line 520 "<stdout>" yy57: yych = *++YYCURSOR; if(yych <= ','){ if(yych != '+') goto yy2; @@ -932,7 +936,7 @@ return 1; } -#line 593 "<stdout>" +#line 597 "<stdout>" yy68: yych = *++YYCURSOR; if(yych == 'N') goto yy65; goto yy2; @@ -968,7 +972,7 @@ ZVAL_LONG(*rval, parse_iv(start + 2)); return 1; } -#line 630 "<stdout>" +#line 634 "<stdout>" yy75: yych = *++YYCURSOR; if(yych <= '/') goto yy2; if(yych >= '2') goto yy2; @@ -986,7 +990,7 @@ ZVAL_BOOL(*rval, parse_iv(start + 2)); return 1; } -#line 648 "<stdout>" +#line 652 "<stdout>" yy79: ++YYCURSOR; goto yy80; yy80: @@ -997,7 +1001,7 @@ ZVAL_NULL(*rval); return 1; } -#line 659 "<stdout>" +#line 663 "<stdout>" yy81: yych = *++YYCURSOR; if(yych <= ','){ if(yych != '+') goto yy2; @@ -1046,7 +1050,7 @@ return 1; } -#line 709 "<stdout>" +#line 713 "<stdout>" yy87: yych = *++YYCURSOR; if(yych <= ','){ if(yych != '+') goto yy2; @@ -1093,9 +1097,9 @@ return 1; } -#line 757 "<stdout>" +#line 761 "<stdout>" } -#line 623 "/usr/src/php/php5/ext/standard/var_unserializer.re" +#line 627 "/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