1
0
mirror of https://github.com/php/php-src.git synced 2026-04-22 23:48:14 +02:00

Better fix for mark problem

This commit is contained in:
Sascha Schumann
2001-09-09 14:52:39 +00:00
parent c86c9f52b4
commit de963ce9c6
2 changed files with 26 additions and 32 deletions
+25 -28
View File
@@ -1,5 +1,5 @@
/* Generated by re2c 0.5 on Sun Sep 9 16:36:08 2001 */
#line 1 "/home/sas/src/php4/ext/standard/url_scanner_ex.re"
/* Generated by re2c 0.5 on Sun Sep 9 16:51:59 2001 */
#line 1 "url_scanner_ex.re"
/*
+----------------------------------------------------------------------+
| PHP version 4.0 |
@@ -160,7 +160,7 @@ yy5:
yy6: yych = *++YYCURSOR;
yy7:
#line 111
{ bash = p; goto done; }
{ bash = p - 1; goto done; }
yy8: ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
@@ -172,9 +172,6 @@ yy10:
#line 113
done:
if (bash)
bash--;
/* Don't modify URLs of the format "#mark" */
if (bash && bash - url->c == 0) {
@@ -365,17 +362,17 @@ yy11:
if(yybm[0+yych] & 128) goto yy15;
yy13: yych = *++YYCURSOR;
yy14:
#line 264
#line 261
{ passthru(STD_ARGS); STATE = STATE_TAG; goto state_tag; }
yy15: ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
yy16: if(yybm[0+yych] & 128) goto yy15;
yy17:
#line 265
#line 262
{ passthru(STD_ARGS); goto state_plain; }
}
#line 266
#line 263
state_tag:
@@ -429,11 +426,11 @@ yy18:
yy20: yych = *++YYCURSOR;
goto yy25;
yy21:
#line 271
#line 268
{ handle_tag(STD_ARGS); /* Sets STATE */; passthru(STD_ARGS); if (STATE == STATE_PLAIN) goto state_plain; else goto state_next_arg; }
yy22: yych = *++YYCURSOR;
yy23:
#line 272
#line 269
{ passthru(STD_ARGS); goto state_plain_begin; }
yy24: ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
@@ -441,7 +438,7 @@ yy24: ++YYCURSOR;
yy25: if(yybm[0+yych] & 128) goto yy24;
goto yy21;
}
#line 273
#line 270
state_next_arg_begin:
@@ -512,20 +509,20 @@ yy26:
}
yy28: yych = *++YYCURSOR;
yy29:
#line 281
#line 278
{ passthru(STD_ARGS); handle_form(STD_ARGS); goto state_plain_begin; }
yy30: yych = *++YYCURSOR;
goto yy37;
yy31:
#line 282
#line 279
{ passthru(STD_ARGS); goto state_next_arg; }
yy32: yych = *++YYCURSOR;
yy33:
#line 283
#line 280
{ --YYCURSOR; STATE = STATE_ARG; goto state_arg; }
yy34: yych = *++YYCURSOR;
yy35:
#line 284
#line 281
{ passthru(STD_ARGS); goto state_plain_begin; }
yy36: ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
@@ -533,7 +530,7 @@ yy36: ++YYCURSOR;
yy37: if(yybm[0+yych] & 128) goto yy36;
goto yy31;
}
#line 285
#line 282
state_arg:
@@ -587,11 +584,11 @@ yy38:
yy40: yych = *++YYCURSOR;
goto yy45;
yy41:
#line 290
#line 287
{ passthru(STD_ARGS); handle_arg(STD_ARGS); STATE = STATE_BEFORE_VAL; goto state_before_val; }
yy42: yych = *++YYCURSOR;
yy43:
#line 291
#line 288
{ passthru(STD_ARGS); STATE = STATE_NEXT_ARG; goto state_next_arg; }
yy44: ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
@@ -599,7 +596,7 @@ yy44: ++YYCURSOR;
yy45: if(yybm[0+yych] & 128) goto yy44;
goto yy41;
}
#line 292
#line 289
state_before_val:
@@ -654,12 +651,12 @@ yy48: yyaccept = 0;
if(yych == ' ') goto yy55;
if(yych == '=') goto yy53;
yy49:
#line 298
#line 295
{ --YYCURSOR; goto state_next_arg_begin; }
yy50: yych = *++YYCURSOR;
goto yy54;
yy51:
#line 297
#line 294
{ passthru(STD_ARGS); STATE = STATE_VAL; goto state_val; }
yy52: yych = *++YYCURSOR;
goto yy49;
@@ -678,7 +675,7 @@ yy57: YYCURSOR = YYMARKER;
case 0: goto yy49;
}
}
#line 299
#line 296
@@ -748,7 +745,7 @@ yy60: yyaccept = 0;
yych = *(YYMARKER = ++YYCURSOR);
if(yych != '>') goto yy74;
yy61:
#line 308
#line 305
{ passthru(STD_ARGS); goto state_next_arg_begin; }
yy62: yyaccept = 0;
yych = *(YYMARKER = ++YYCURSOR);
@@ -757,7 +754,7 @@ yy62: yyaccept = 0;
yy63: yych = *++YYCURSOR;
goto yy67;
yy64:
#line 307
#line 304
{ handle_val(STD_ARGS, 0, '"'); goto state_next_arg_begin; }
yy65: yych = *++YYCURSOR;
goto yy61;
@@ -777,7 +774,7 @@ yy70: YYCURSOR = YYMARKER;
}
yy71: yych = *++YYCURSOR;
yy72:
#line 306
#line 303
{ handle_val(STD_ARGS, 1, '\''); goto state_next_arg_begin; }
yy73: ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
@@ -786,10 +783,10 @@ yy74: if(yybm[0+yych] & 128) goto yy73;
if(yych >= '>') goto yy70;
yy75: yych = *++YYCURSOR;
yy76:
#line 305
#line 302
{ handle_val(STD_ARGS, 1, '"'); goto state_next_arg_begin; }
}
#line 309
#line 306
stop:
+1 -4
View File
@@ -108,13 +108,10 @@ scan:
/*!re2c
":" { smart_str_append(dest, url); return; }
"?" { sep = separator; goto done; }
"#" { bash = p; goto done; }
"#" { bash = p - 1; goto done; }
(any\[:?#])+ { goto scan; }
*/
done:
if (bash)
bash--;
/* Don't modify URLs of the format "#mark" */
if (bash && bash - url->c == 0) {