Re: [PHP-CVS] com php-src: Merge fix of #62836 to ?.re, and regenerate ?.c: ext/standard/var_unserializer.c ext/standard/var_unserializer.re
Test case? Quoting Xinchen Hui larue...@php.net: Commit:86c1a26169ce44c9ea48e424b62128ee62f31d59 Author:Xinchen Hui larue...@php.net Mon, 21 Jan 2013 11:35:22 +0800 Parents: 9e7c2e5906d1ec943afe7f6a0daf613a36ba2137 Branches: PHP-5.4 Link: http://git.php.net/?p=php-src.git;a=commitdiff;h=86c1a26169ce44c9ea48e424b62128ee62f31d59 Log: Merge fix of #62836 to ?.re, and regenerate ?.c Bugs: https://bugs.php.net/62836 Changed paths: M ext/standard/var_unserializer.c M ext/standard/var_unserializer.re Diff: diff --git a/ext/standard/var_unserializer.c b/ext/standard/var_unserializer.c index 1e896d2..bd0b2f6 100644 --- a/ext/standard/var_unserializer.c +++ b/ext/standard/var_unserializer.c @@ -1,4 +1,4 @@ -/* Generated by re2c 0.13.5 on Wed Nov 9 19:37:48 2011 */ +/* Generated by re2c 0.13.5 on Mon Jan 21 11:34:03 2013 */ #line 1 ext/standard/var_unserializer.re /* +--+ @@ -427,7 +427,7 @@ PHPAPI int php_var_unserialize(UNSERIALIZE_PARAMETER) -#line 425 ext/standard/var_unserializer.c +#line 431 ext/standard/var_unserializer.c { YYCTYPE yych; static const unsigned char yybm[] = { @@ -487,9 +487,9 @@ yy2: yych = *(YYMARKER = ++YYCURSOR); if (yych == ':') goto yy95; yy3: -#line 747 ext/standard/var_unserializer.re +#line 759 ext/standard/var_unserializer.re { return 0; } -#line 487 ext/standard/var_unserializer.c +#line 493 ext/standard/var_unserializer.c yy4: yych = *(YYMARKER = ++YYCURSOR); if (yych == ':') goto yy89; @@ -532,13 +532,13 @@ yy13: goto yy3; yy14: ++YYCURSOR; -#line 741 ext/standard/var_unserializer.re +#line 753 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 536 ext/standard/var_unserializer.c +#line 542 ext/standard/var_unserializer.c yy16: yych = *++YYCURSOR; goto yy3; @@ -568,7 +568,7 @@ yy20: yych = *++YYCURSOR; if (yych != '') goto yy18; ++YYCURSOR; -#line 624 ext/standard/var_unserializer.re +#line 630 ext/standard/var_unserializer.re { size_t len, len2, len3, maxlen; long elements; @@ -691,7 +691,7 @@ yy20: return object_common2(UNSERIALIZE_PASSTHRU, elements); } -#line 683 ext/standard/var_unserializer.c +#line 695 ext/standard/var_unserializer.c yy25: yych = *++YYCURSOR; if (yych = ',') { @@ -716,7 +716,7 @@ yy27: yych = *++YYCURSOR; if (yych != '') goto yy18; ++YYCURSOR; -#line 616 ext/standard/var_unserializer.re +#line 622 ext/standard/var_unserializer.re { INIT_PZVAL(*rval); @@ -724,7 +724,7 @@ yy27: return object_common2(UNSERIALIZE_PASSTHRU, object_common1(UNSERIALIZE_PASSTHRU, ZEND_STANDARD_CLASS_DEF_PTR)); } -#line 716 ext/standard/var_unserializer.c +#line 728 ext/standard/var_unserializer.c yy32: yych = *++YYCURSOR; if (yych == '+') goto yy33; @@ -745,7 +745,7 @@ yy34: yych = *++YYCURSOR; if (yych != '{') goto yy18; ++YYCURSOR; -#line 596 ext/standard/var_unserializer.re +#line 602 ext/standard/var_unserializer.re { long elements = parse_iv(start + 2); /* use iv() not uiv() in order to check data range */ @@ -765,7 +765,7 @@ yy34: return finish_nested_data(UNSERIALIZE_PASSTHRU); } -#line 757 ext/standard/var_unserializer.c +#line 769 ext/standard/var_unserializer.c yy39: yych = *++YYCURSOR; if (yych == '+') goto yy40; @@ -786,7 +786,7 @@ yy41: yych = *++YYCURSOR; if (yych != '') goto yy18; ++YYCURSOR; -#line 567 ext/standard/var_unserializer.re +#line 573 ext/standard/var_unserializer.re { size_t len, maxlen; char *str; @@ -815,7 +815,7 @@ yy41: ZVAL_STRINGL(*rval, str, len, 0); return 1; } -#line 807 ext/standard/var_unserializer.c +#line 819 ext/standard/var_unserializer.c yy46: yych = *++YYCURSOR; if (yych == '+') goto yy47; @@ -836,7 +836,7 @@ yy48: yych = *++YYCURSOR; if (yych != '') goto yy18; ++YYCURSOR; -#line 539 ext/standard/var_unserializer.re +#line 545 ext/standard/var_unserializer.re { size_t len, maxlen; char *str; @@ -864,7 +864,7 @@ yy48: ZVAL_STRINGL(*rval, str, len, 1); return 1; } -#line 856 ext/standard/var_unserializer.c +#line 868 ext/standard/var_unserializer.c yy53: yych = *++YYCURSOR; if (yych = '/') { @@ -952,7 +952,7 @@ yy61: } yy63: ++YYCURSOR; -#line 529 ext/standard/var_unserializer.re +#line 535 ext/standard/var_unserializer.re { #if SIZEOF_LONG == 4 use_double: @@ -962,7 +962,7 @@
Re: [PHP-CVS] com php-src: Merge fix of #62836 to ?.re, and regenerate ?.c: ext/standard/var_unserializer.c ext/standard/var_unserializer.re
hey: this is not a new fix, just merge the fix into *.re the original fix is here (with test scripts): http://git.php.net/?p=php-src.git;a=commit;h=0b23da1c74c52a819b728c78c66c182511223355 thanks On Mon, Jan 21, 2013 at 5:11 PM, Nuno Lopes nlop...@php.net wrote: Test case? Quoting Xinchen Hui larue...@php.net: Commit:86c1a26169ce44c9ea48e424b62128ee62f31d59 Author:Xinchen Hui larue...@php.net Mon, 21 Jan 2013 11:35:22 +0800 Parents: 9e7c2e5906d1ec943afe7f6a0daf613a36ba2137 Branches: PHP-5.4 Link: http://git.php.net/?p=php-src.git;a=commitdiff;h=86c1a26169ce44c9ea48e424b62128ee62f31d59 Log: Merge fix of #62836 to ?.re, and regenerate ?.c Bugs: https://bugs.php.net/62836 Changed paths: M ext/standard/var_unserializer.c M ext/standard/var_unserializer.re Diff: diff --git a/ext/standard/var_unserializer.c b/ext/standard/var_unserializer.c index 1e896d2..bd0b2f6 100644 --- a/ext/standard/var_unserializer.c +++ b/ext/standard/var_unserializer.c @@ -1,4 +1,4 @@ -/* Generated by re2c 0.13.5 on Wed Nov 9 19:37:48 2011 */ +/* Generated by re2c 0.13.5 on Mon Jan 21 11:34:03 2013 */ #line 1 ext/standard/var_unserializer.re /* +--+ @@ -427,7 +427,7 @@ PHPAPI int php_var_unserialize(UNSERIALIZE_PARAMETER) -#line 425 ext/standard/var_unserializer.c +#line 431 ext/standard/var_unserializer.c { YYCTYPE yych; static const unsigned char yybm[] = { @@ -487,9 +487,9 @@ yy2: yych = *(YYMARKER = ++YYCURSOR); if (yych == ':') goto yy95; yy3: -#line 747 ext/standard/var_unserializer.re +#line 759 ext/standard/var_unserializer.re { return 0; } -#line 487 ext/standard/var_unserializer.c +#line 493 ext/standard/var_unserializer.c yy4: yych = *(YYMARKER = ++YYCURSOR); if (yych == ':') goto yy89; @@ -532,13 +532,13 @@ yy13: goto yy3; yy14: ++YYCURSOR; -#line 741 ext/standard/var_unserializer.re +#line 753 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 536 ext/standard/var_unserializer.c +#line 542 ext/standard/var_unserializer.c yy16: yych = *++YYCURSOR; goto yy3; @@ -568,7 +568,7 @@ yy20: yych = *++YYCURSOR; if (yych != '') goto yy18; ++YYCURSOR; -#line 624 ext/standard/var_unserializer.re +#line 630 ext/standard/var_unserializer.re { size_t len, len2, len3, maxlen; long elements; @@ -691,7 +691,7 @@ yy20: return object_common2(UNSERIALIZE_PASSTHRU, elements); } -#line 683 ext/standard/var_unserializer.c +#line 695 ext/standard/var_unserializer.c yy25: yych = *++YYCURSOR; if (yych = ',') { @@ -716,7 +716,7 @@ yy27: yych = *++YYCURSOR; if (yych != '') goto yy18; ++YYCURSOR; -#line 616 ext/standard/var_unserializer.re +#line 622 ext/standard/var_unserializer.re { INIT_PZVAL(*rval); @@ -724,7 +724,7 @@ yy27: return object_common2(UNSERIALIZE_PASSTHRU, object_common1(UNSERIALIZE_PASSTHRU, ZEND_STANDARD_CLASS_DEF_PTR)); } -#line 716 ext/standard/var_unserializer.c +#line 728 ext/standard/var_unserializer.c yy32: yych = *++YYCURSOR; if (yych == '+') goto yy33; @@ -745,7 +745,7 @@ yy34: yych = *++YYCURSOR; if (yych != '{') goto yy18; ++YYCURSOR; -#line 596 ext/standard/var_unserializer.re +#line 602 ext/standard/var_unserializer.re { long elements = parse_iv(start + 2); /* use iv() not uiv() in order to check data range */ @@ -765,7 +765,7 @@ yy34: return finish_nested_data(UNSERIALIZE_PASSTHRU); } -#line 757 ext/standard/var_unserializer.c +#line 769 ext/standard/var_unserializer.c yy39: yych = *++YYCURSOR; if (yych == '+') goto yy40; @@ -786,7 +786,7 @@ yy41: yych = *++YYCURSOR; if (yych != '') goto yy18; ++YYCURSOR; -#line 567 ext/standard/var_unserializer.re +#line 573 ext/standard/var_unserializer.re { size_t len, maxlen; char *str; @@ -815,7 +815,7 @@ yy41: ZVAL_STRINGL(*rval, str, len, 0); return 1; } -#line 807 ext/standard/var_unserializer.c +#line 819 ext/standard/var_unserializer.c yy46: yych = *++YYCURSOR; if (yych == '+') goto yy47; @@ -836,7 +836,7 @@ yy48: yych = *++YYCURSOR; if (yych != '') goto yy18; ++YYCURSOR; -#line 539 ext/standard/var_unserializer.re +#line 545 ext/standard/var_unserializer.re { size_t len, maxlen; char *str; @@ -864,7 +864,7 @@ yy48: ZVAL_STRINGL(*rval, str, len, 1);
Re: [PHP-CVS] com php-src: Merge fix of #62836 to ?.re, and regenerate ?.c: ext/standard/var_unserializer.c ext/standard/var_unserializer.re
Ok, thank you for the explanation! :) Nuno - Original Message - hey: this is not a new fix, just merge the fix into *.re the original fix is here (with test scripts): http://git.php.net/?p=php-src.git;a=commit;h=0b23da1c74c52a819b728c78c66c182511223355 thanks On Mon, Jan 21, 2013 at 5:11 PM, Nuno Lopes nlop...@php.net wrote: Test case? Quoting Xinchen Hui larue...@php.net: Commit:86c1a26169ce44c9ea48e424b62128ee62f31d59 Author:Xinchen Hui larue...@php.net Mon, 21 Jan 2013 11:35:22 +0800 Parents: 9e7c2e5906d1ec943afe7f6a0daf613a36ba2137 Branches: PHP-5.4 Link: http://git.php.net/?p=php-src.git;a=commitdiff;h=86c1a26169ce44c9ea48e424b62128ee62f31d59 Log: Merge fix of #62836 to ?.re, and regenerate ?.c Bugs: https://bugs.php.net/62836 Changed paths: M ext/standard/var_unserializer.c M ext/standard/var_unserializer.re Diff: diff --git a/ext/standard/var_unserializer.c b/ext/standard/var_unserializer.c index 1e896d2..bd0b2f6 100644 --- a/ext/standard/var_unserializer.c +++ b/ext/standard/var_unserializer.c @@ -1,4 +1,4 @@ -/* Generated by re2c 0.13.5 on Wed Nov 9 19:37:48 2011 */ +/* Generated by re2c 0.13.5 on Mon Jan 21 11:34:03 2013 */ #line 1 ext/standard/var_unserializer.re /* +--+ @@ -427,7 +427,7 @@ PHPAPI int php_var_unserialize(UNSERIALIZE_PARAMETER) -#line 425 ext/standard/var_unserializer.c +#line 431 ext/standard/var_unserializer.c { YYCTYPE yych; static const unsigned char yybm[] = { @@ -487,9 +487,9 @@ yy2: yych = *(YYMARKER = ++YYCURSOR); if (yych == ':') goto yy95; yy3: -#line 747 ext/standard/var_unserializer.re +#line 759 ext/standard/var_unserializer.re { return 0; } -#line 487 ext/standard/var_unserializer.c +#line 493 ext/standard/var_unserializer.c yy4: yych = *(YYMARKER = ++YYCURSOR); if (yych == ':') goto yy89; @@ -532,13 +532,13 @@ yy13: goto yy3; yy14: ++YYCURSOR; -#line 741 ext/standard/var_unserializer.re +#line 753 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 536 ext/standard/var_unserializer.c +#line 542 ext/standard/var_unserializer.c yy16: yych = *++YYCURSOR; goto yy3; @@ -568,7 +568,7 @@ yy20: yych = *++YYCURSOR; if (yych != '') goto yy18; ++YYCURSOR; -#line 624 ext/standard/var_unserializer.re +#line 630 ext/standard/var_unserializer.re { size_t len, len2, len3, maxlen; long elements; @@ -691,7 +691,7 @@ yy20: return object_common2(UNSERIALIZE_PASSTHRU, elements); } -#line 683 ext/standard/var_unserializer.c +#line 695 ext/standard/var_unserializer.c yy25: yych = *++YYCURSOR; if (yych = ',') { @@ -716,7 +716,7 @@ yy27: yych = *++YYCURSOR; if (yych != '') goto yy18; ++YYCURSOR; -#line 616 ext/standard/var_unserializer.re +#line 622 ext/standard/var_unserializer.re { INIT_PZVAL(*rval); @@ -724,7 +724,7 @@ yy27: return object_common2(UNSERIALIZE_PASSTHRU, object_common1(UNSERIALIZE_PASSTHRU, ZEND_STANDARD_CLASS_DEF_PTR)); } -#line 716 ext/standard/var_unserializer.c +#line 728 ext/standard/var_unserializer.c yy32: yych = *++YYCURSOR; if (yych == '+') goto yy33; @@ -745,7 +745,7 @@ yy34: yych = *++YYCURSOR; if (yych != '{') goto yy18; ++YYCURSOR; -#line 596 ext/standard/var_unserializer.re +#line 602 ext/standard/var_unserializer.re { long elements = parse_iv(start + 2); /* use iv() not uiv() in order to check data range */ @@ -765,7 +765,7 @@ yy34: return finish_nested_data(UNSERIALIZE_PASSTHRU); } -#line 757 ext/standard/var_unserializer.c +#line 769 ext/standard/var_unserializer.c yy39: yych = *++YYCURSOR; if (yych == '+') goto yy40; @@ -786,7 +786,7 @@ yy41: yych = *++YYCURSOR; if (yych != '') goto yy18; ++YYCURSOR; -#line 567 ext/standard/var_unserializer.re +#line 573 ext/standard/var_unserializer.re { size_t len, maxlen; char *str; @@ -815,7 +815,7 @@ yy41: ZVAL_STRINGL(*rval, str, len, 0); return 1; } -#line 807 ext/standard/var_unserializer.c +#line 819 ext/standard/var_unserializer.c yy46: yych = *++YYCURSOR; if (yych == '+') goto yy47; @@ -836,7 +836,7 @@ yy48: yych = *++YYCURSOR; if (yych != '') goto yy18; ++YYCURSOR; -#line 539 ext/standard/var_unserializer.re +#line 545 ext/standard/var_unserializer.re { size_t len, maxlen; char *str; @@ -864,7 +864,7 @@ yy48: ZVAL_STRINGL(*rval, str, len, 1); return 1; } -#line 856 ext/standard/var_unserializer.c
[PHP-CVS] com php-src: Merge fix of #62836 to ?.re, and regenerate ?.c: ext/standard/var_unserializer.c ext/standard/var_unserializer.re
Commit:86c1a26169ce44c9ea48e424b62128ee62f31d59 Author:Xinchen Hui larue...@php.net Mon, 21 Jan 2013 11:35:22 +0800 Parents: 9e7c2e5906d1ec943afe7f6a0daf613a36ba2137 Branches: PHP-5.4 Link: http://git.php.net/?p=php-src.git;a=commitdiff;h=86c1a26169ce44c9ea48e424b62128ee62f31d59 Log: Merge fix of #62836 to ?.re, and regenerate ?.c Bugs: https://bugs.php.net/62836 Changed paths: M ext/standard/var_unserializer.c M ext/standard/var_unserializer.re Diff: diff --git a/ext/standard/var_unserializer.c b/ext/standard/var_unserializer.c index 1e896d2..bd0b2f6 100644 --- a/ext/standard/var_unserializer.c +++ b/ext/standard/var_unserializer.c @@ -1,4 +1,4 @@ -/* Generated by re2c 0.13.5 on Wed Nov 9 19:37:48 2011 */ +/* Generated by re2c 0.13.5 on Mon Jan 21 11:34:03 2013 */ #line 1 ext/standard/var_unserializer.re /* +--+ @@ -427,7 +427,7 @@ PHPAPI int php_var_unserialize(UNSERIALIZE_PARAMETER) -#line 425 ext/standard/var_unserializer.c +#line 431 ext/standard/var_unserializer.c { YYCTYPE yych; static const unsigned char yybm[] = { @@ -487,9 +487,9 @@ yy2: yych = *(YYMARKER = ++YYCURSOR); if (yych == ':') goto yy95; yy3: -#line 747 ext/standard/var_unserializer.re +#line 759 ext/standard/var_unserializer.re { return 0; } -#line 487 ext/standard/var_unserializer.c +#line 493 ext/standard/var_unserializer.c yy4: yych = *(YYMARKER = ++YYCURSOR); if (yych == ':') goto yy89; @@ -532,13 +532,13 @@ yy13: goto yy3; yy14: ++YYCURSOR; -#line 741 ext/standard/var_unserializer.re +#line 753 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 536 ext/standard/var_unserializer.c +#line 542 ext/standard/var_unserializer.c yy16: yych = *++YYCURSOR; goto yy3; @@ -568,7 +568,7 @@ yy20: yych = *++YYCURSOR; if (yych != '') goto yy18; ++YYCURSOR; -#line 624 ext/standard/var_unserializer.re +#line 630 ext/standard/var_unserializer.re { size_t len, len2, len3, maxlen; long elements; @@ -691,7 +691,7 @@ yy20: return object_common2(UNSERIALIZE_PASSTHRU, elements); } -#line 683 ext/standard/var_unserializer.c +#line 695 ext/standard/var_unserializer.c yy25: yych = *++YYCURSOR; if (yych = ',') { @@ -716,7 +716,7 @@ yy27: yych = *++YYCURSOR; if (yych != '') goto yy18; ++YYCURSOR; -#line 616 ext/standard/var_unserializer.re +#line 622 ext/standard/var_unserializer.re { INIT_PZVAL(*rval); @@ -724,7 +724,7 @@ yy27: return object_common2(UNSERIALIZE_PASSTHRU, object_common1(UNSERIALIZE_PASSTHRU, ZEND_STANDARD_CLASS_DEF_PTR)); } -#line 716 ext/standard/var_unserializer.c +#line 728 ext/standard/var_unserializer.c yy32: yych = *++YYCURSOR; if (yych == '+') goto yy33; @@ -745,7 +745,7 @@ yy34: yych = *++YYCURSOR; if (yych != '{') goto yy18; ++YYCURSOR; -#line 596 ext/standard/var_unserializer.re +#line 602 ext/standard/var_unserializer.re { long elements = parse_iv(start + 2); /* use iv() not uiv() in order to check data range */ @@ -765,7 +765,7 @@ yy34: return finish_nested_data(UNSERIALIZE_PASSTHRU); } -#line 757 ext/standard/var_unserializer.c +#line 769 ext/standard/var_unserializer.c yy39: yych = *++YYCURSOR; if (yych == '+') goto yy40; @@ -786,7 +786,7 @@ yy41: yych = *++YYCURSOR; if (yych != '') goto yy18; ++YYCURSOR; -#line 567 ext/standard/var_unserializer.re +#line 573 ext/standard/var_unserializer.re { size_t len, maxlen; char *str; @@ -815,7 +815,7 @@ yy41: ZVAL_STRINGL(*rval, str, len, 0); return 1; } -#line 807 ext/standard/var_unserializer.c +#line 819 ext/standard/var_unserializer.c yy46: yych = *++YYCURSOR; if (yych == '+') goto yy47; @@ -836,7 +836,7 @@ yy48: yych = *++YYCURSOR; if (yych != '') goto yy18; ++YYCURSOR; -#line 539 ext/standard/var_unserializer.re +#line 545 ext/standard/var_unserializer.re { size_t len, maxlen; char *str; @@ -864,7 +864,7 @@ yy48: ZVAL_STRINGL(*rval, str, len, 1); return 1; } -#line 856 ext/standard/var_unserializer.c +#line 868 ext/standard/var_unserializer.c yy53: yych = *++YYCURSOR; if (yych = '/') { @@ -952,7 +952,7 @@ yy61: } yy63: ++YYCURSOR; -#line 529 ext/standard/var_unserializer.re +#line 535 ext/standard/var_unserializer.re { #if SIZEOF_LONG == 4 use_double: @@ -962,7 +962,7 @@ use_double: ZVAL_DOUBLE(*rval,