summaryrefslogtreecommitdiff
path: root/ext/standard/var_unserializer.c
diff options
context:
space:
mode:
authorfoobar <sniper@php.net>2005-04-14 22:38:29 +0000
committerfoobar <sniper@php.net>2005-04-14 22:38:29 +0000
commit519f381fca1bffaff1b8b5a3b02824c3110086c1 (patch)
tree904e4d18a5a24ce147d9d5899db740fcc5889099 /ext/standard/var_unserializer.c
parent172f3af8edd7e44f0f889bd8c2ffb54c324cb02b (diff)
downloadphp-git-519f381fca1bffaff1b8b5a3b02824c3110086c1.tar.gz
- Regenerated with re2c 0.9.6 (fixes severe bugs)
Diffstat (limited to 'ext/standard/var_unserializer.c')
-rw-r--r--ext/standard/var_unserializer.c82
1 files changed, 44 insertions, 38 deletions
diff --git a/ext/standard/var_unserializer.c b/ext/standard/var_unserializer.c
index 5517f0a4ef..1abe4eeec4 100644
--- a/ext/standard/var_unserializer.c
+++ b/ext/standard/var_unserializer.c
@@ -1,5 +1,5 @@
-/* Generated by re2c 0.9.4 on Thu Mar 10 01:10:07 2005 */
-#line 1 "/usr/src/php-cvs/ext/standard/var_unserializer.re"
+/* Generated by re2c 0.9.6 on Fri Apr 15 01:37:39 2005 */
+#line 1 "/usr/src/php/php5/ext/standard/var_unserializer.re"
/*
+----------------------------------------------------------------------+
| PHP Version 5 |
@@ -147,7 +147,7 @@ PHPAPI void var_destroy(php_unserialize_data_t *var_hashx)
#define YYMARKER marker
-#line 155 "/usr/src/php-cvs/ext/standard/var_unserializer.re"
+#line 155 "/usr/src/php/php5/ext/standard/var_unserializer.re"
@@ -393,7 +393,7 @@ PHPAPI int php_var_unserialize(UNSERIALIZE_PARAMETER)
0, 0, 0, 0, 0, 0, 0, 0,
};
goto yy0;
-yy1: ++YYCURSOR;
+ ++YYCURSOR;
yy0:
if((YYLIMIT - YYCURSOR) < 7) YYFILL(7);
yych = *YYCURSOR;
@@ -448,7 +448,7 @@ yy3: yyaccept = 0;
if(yych == ':') goto yy87;
goto yy4;
yy4:
-#line 625 "/usr/src/php-cvs/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 @@ yy13: yyaccept = 0;
yy14: ++YYCURSOR;
goto yy15;
yy15:
-#line 619 "/usr/src/php-cvs/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");
@@ -499,17 +499,23 @@ yy15:
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;
@@ -518,7 +524,7 @@ yy21: yych = *++YYCURSOR;
yy22: ++YYCURSOR;
goto yy23;
yy23:
-#line 507 "/usr/src/php-cvs/ext/standard/var_unserializer.re"
+#line 507 "/usr/src/php/php5/ext/standard/var_unserializer.re"
{
size_t len, len2, len3, maxlen;
long elements;
@@ -630,7 +636,7 @@ yy23:
return object_common2(UNSERIALIZE_PASSTHRU, elements);
}
-#line 284 "<stdout>"
+#line 290 "<stdout>"
yy24: yych = *++YYCURSOR;
if(yych <= ','){
if(yych != '+') goto yy2;
@@ -646,7 +652,7 @@ yy25: yych = *++YYCURSOR;
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;
@@ -659,7 +665,7 @@ yy28: yych = *++YYCURSOR;
yy29: ++YYCURSOR;
goto yy30;
yy30:
-#line 499 "/usr/src/php-cvs/ext/standard/var_unserializer.re"
+#line 499 "/usr/src/php/php5/ext/standard/var_unserializer.re"
{
INIT_PZVAL(*rval);
@@ -667,7 +673,7 @@ yy30:
return object_common2(UNSERIALIZE_PASSTHRU,
object_common1(UNSERIALIZE_PASSTHRU, ZEND_STANDARD_CLASS_DEF_PTR));
}
-#line 322 "<stdout>"
+#line 328 "<stdout>"
yy31: yych = *++YYCURSOR;
if(yych == '+') goto yy32;
if(yych <= '/') goto yy2;
@@ -678,7 +684,7 @@ yy32: yych = *++YYCURSOR;
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;
@@ -691,7 +697,7 @@ yy35: yych = *++YYCURSOR;
yy36: ++YYCURSOR;
goto yy37;
yy37:
-#line 477 "/usr/src/php-cvs/ext/standard/var_unserializer.re"
+#line 477 "/usr/src/php/php5/ext/standard/var_unserializer.re"
{
long elements = parse_iv(start + 2);
/* use iv() not uiv() in order to check data range */
@@ -713,7 +719,7 @@ yy37:
return finish_nested_data(UNSERIALIZE_PASSTHRU);
}
-#line 369 "<stdout>"
+#line 375 "<stdout>"
yy38: yych = *++YYCURSOR;
if(yych == '+') goto yy39;
if(yych <= '/') goto yy2;
@@ -724,7 +730,7 @@ yy39: yych = *++YYCURSOR;
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;
@@ -737,7 +743,7 @@ yy42: yych = *++YYCURSOR;
yy43: ++YYCURSOR;
goto yy44;
yy44:
-#line 449 "/usr/src/php-cvs/ext/standard/var_unserializer.re"
+#line 449 "/usr/src/php/php5/ext/standard/var_unserializer.re"
{
size_t len, maxlen;
char *str;
@@ -765,7 +771,7 @@ yy44:
ZVAL_STRINGL(*rval, str, len, 1);
return 1;
}
-#line 422 "<stdout>"
+#line 428 "<stdout>"
yy45: yych = *++YYCURSOR;
if(yych <= '/'){
if(yych <= ','){
@@ -807,7 +813,7 @@ yy49: yych = *++YYCURSOR;
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 <= ':'){
@@ -834,7 +840,7 @@ yy52: yych = *++YYCURSOR;
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 <= ';'){
@@ -854,14 +860,14 @@ yy54: if(yych <= ';'){
yy55: ++YYCURSOR;
goto yy56;
yy56:
-#line 442 "/usr/src/php-cvs/ext/standard/var_unserializer.re"
+#line 442 "/usr/src/php/php5/ext/standard/var_unserializer.re"
{
*p = YYCURSOR;
INIT_PZVAL(*rval);
ZVAL_DOUBLE(*rval, zend_strtod((const char *)start + 2, NULL));
return 1;
}
-#line 520 "<stdout>"
+#line 526 "<stdout>"
yy57: yych = *++YYCURSOR;
if(yych <= ','){
if(yych != '+') goto yy2;
@@ -921,7 +927,7 @@ yy65: yych = *++YYCURSOR;
yy66: ++YYCURSOR;
goto yy67;
yy67:
-#line 427 "/usr/src/php-cvs/ext/standard/var_unserializer.re"
+#line 427 "/usr/src/php/php5/ext/standard/var_unserializer.re"
{
*p = YYCURSOR;
INIT_PZVAL(*rval);
@@ -936,7 +942,7 @@ yy67:
return 1;
}
-#line 597 "<stdout>"
+#line 603 "<stdout>"
yy68: yych = *++YYCURSOR;
if(yych == 'N') goto yy65;
goto yy2;
@@ -965,14 +971,14 @@ yy72: if(yych <= '/') goto yy2;
yy73: ++YYCURSOR;
goto yy74;
yy74:
-#line 420 "/usr/src/php-cvs/ext/standard/var_unserializer.re"
+#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 634 "<stdout>"
+#line 640 "<stdout>"
yy75: yych = *++YYCURSOR;
if(yych <= '/') goto yy2;
if(yych >= '2') goto yy2;
@@ -983,25 +989,25 @@ yy76: yych = *++YYCURSOR;
yy77: ++YYCURSOR;
goto yy78;
yy78:
-#line 413 "/usr/src/php-cvs/ext/standard/var_unserializer.re"
+#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;
}
-#line 652 "<stdout>"
+#line 658 "<stdout>"
yy79: ++YYCURSOR;
goto yy80;
yy80:
-#line 406 "/usr/src/php-cvs/ext/standard/var_unserializer.re"
+#line 406 "/usr/src/php/php5/ext/standard/var_unserializer.re"
{
*p = YYCURSOR;
INIT_PZVAL(*rval);
ZVAL_NULL(*rval);
return 1;
}
-#line 663 "<stdout>"
+#line 669 "<stdout>"
yy81: yych = *++YYCURSOR;
if(yych <= ','){
if(yych != '+') goto yy2;
@@ -1027,7 +1033,7 @@ yy84: if(yych <= '/') goto yy2;
yy85: ++YYCURSOR;
goto yy86;
yy86:
-#line 383 "/usr/src/php-cvs/ext/standard/var_unserializer.re"
+#line 383 "/usr/src/php/php5/ext/standard/var_unserializer.re"
{
long id;
@@ -1050,7 +1056,7 @@ yy86:
return 1;
}
-#line 713 "<stdout>"
+#line 719 "<stdout>"
yy87: yych = *++YYCURSOR;
if(yych <= ','){
if(yych != '+') goto yy2;
@@ -1076,7 +1082,7 @@ yy90: if(yych <= '/') goto yy2;
yy91: ++YYCURSOR;
goto yy92;
yy92:
-#line 362 "/usr/src/php-cvs/ext/standard/var_unserializer.re"
+#line 362 "/usr/src/php/php5/ext/standard/var_unserializer.re"
{
long id;
@@ -1097,9 +1103,9 @@ yy92:
return 1;
}
-#line 761 "<stdout>"
+#line 767 "<stdout>"
}
-#line 627 "/usr/src/php-cvs/ext/standard/var_unserializer.re"
+#line 627 "/usr/src/php/php5/ext/standard/var_unserializer.re"
return 0;