]> granicus.if.org Git - php/commitdiff
Merge branch 'PHP-7.2'
authorChristoph M. Becker <cmbecker69@gmx.de>
Tue, 24 Jul 2018 10:33:08 +0000 (12:33 +0200)
committerChristoph M. Becker <cmbecker69@gmx.de>
Tue, 24 Jul 2018 10:41:35 +0000 (12:41 +0200)
* PHP-7.2:
  Fix #76643: Segmentation fault when using `output_add_rewrite_var`

1  2 
NEWS
ext/standard/url_scanner_ex.c
ext/standard/url_scanner_ex.re

diff --cc NEWS
index 703889689cc87b54a58b34318b1458628f191a09,92b0c8a583a861c48b70e028874f47cfc18a4632..93ac91e8cb46eba4a957a2fca5bf7a0be2217439
--- 1/NEWS
--- 2/NEWS
+++ b/NEWS
@@@ -1,21 -1,6 +1,23 @@@
  PHP                                                                        NEWS
  |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
 -?? ??? 2018, PHP 7.2.9
 +?? ??? ????, PHP 7.3.0beta1
 +
 +- Standard:
 +  . Fixed bug #68553 (array_column: null values in $index_key become incrementing
 +    keys in result). (Laruence)
++  . Fixed bug #76643 (Segmentation fault when using `output_add_rewrite_var`).
++    (cmb)
 +
 +19 Jul 2018, PHP 7.3.0alpha4
 +
 +- Core:
 +  . Fixed bug #33502 (Some nullary functions don't check the number of
 +    arguments). (cmb)
 +  . Fixed bug #76392 (Error relocating sapi/cli/php: unsupported relocation
 +    type 37). (Peter Kokot)
 +  . The declaration and use of case-insensitive constants has been deprecated.
 +    (Nikita)
 +  . Added syslog.filter INI entry for syslog filtering. (Philip Prindeville)
  
  - Calendar:
    . Fixed bug #52974 (jewish.c: compile error under Windows with GBK charset).
index ace561cf305ca2c962653bea30b6297ab91333c2,328b972abff71e07aa13b7d588ee7559cefc8a3b..16142347a6b7525457b5774354dbbce77653a993
@@@ -521,7 -520,7 +522,7 @@@ state_plain_begin
  state_plain:
        start = YYCURSOR;
  
- #line 525 "ext/standard/url_scanner_ex.c"
 -#line 524 "ext/standard/url_scanner_ex.c"
++#line 526 "ext/standard/url_scanner_ex.c"
  {
        YYCTYPE yych;
        static const unsigned char yybm[] = {
@@@ -571,22 -570,22 +572,22 @@@ yy2
        if (yybm[0+yych] & 128) {
                goto yy2;
        }
- #line 528 "ext/standard/url_scanner_ex.re"
 -#line 527 "ext/standard/url_scanner_ex.re"
++#line 529 "ext/standard/url_scanner_ex.re"
        { passthru(STD_ARGS); goto state_plain; }
- #line 577 "ext/standard/url_scanner_ex.c"
 -#line 576 "ext/standard/url_scanner_ex.c"
++#line 578 "ext/standard/url_scanner_ex.c"
  yy5:
        ++YYCURSOR;
- #line 527 "ext/standard/url_scanner_ex.re"
 -#line 526 "ext/standard/url_scanner_ex.re"
++#line 528 "ext/standard/url_scanner_ex.re"
        { passthru(STD_ARGS); STATE = STATE_TAG; goto state_tag; }
- #line 582 "ext/standard/url_scanner_ex.c"
 -#line 581 "ext/standard/url_scanner_ex.c"
++#line 583 "ext/standard/url_scanner_ex.c"
  }
- #line 529 "ext/standard/url_scanner_ex.re"
 -#line 528 "ext/standard/url_scanner_ex.re"
++#line 530 "ext/standard/url_scanner_ex.re"
  
  
  state_tag:
        start = YYCURSOR;
  
- #line 590 "ext/standard/url_scanner_ex.c"
 -#line 589 "ext/standard/url_scanner_ex.c"
++#line 591 "ext/standard/url_scanner_ex.c"
  {
        YYCTYPE yych;
        static const unsigned char yybm[] = {
                goto yy11;
        }
        ++YYCURSOR;
- #line 535 "ext/standard/url_scanner_ex.re"
 -#line 534 "ext/standard/url_scanner_ex.re"
++#line 536 "ext/standard/url_scanner_ex.re"
        { passthru(STD_ARGS); goto state_plain_begin; }
- #line 635 "ext/standard/url_scanner_ex.c"
 -#line 634 "ext/standard/url_scanner_ex.c"
++#line 636 "ext/standard/url_scanner_ex.c"
  yy11:
        ++YYCURSOR;
        if (YYLIMIT <= YYCURSOR) YYFILL(1);
        if (yybm[0+yych] & 128) {
                goto yy11;
        }
- #line 534 "ext/standard/url_scanner_ex.re"
 -#line 533 "ext/standard/url_scanner_ex.re"
++#line 535 "ext/standard/url_scanner_ex.re"
        { handle_tag(STD_ARGS); /* Sets STATE */; passthru(STD_ARGS); if (STATE == STATE_PLAIN) goto state_plain; else goto state_next_arg; }
- #line 645 "ext/standard/url_scanner_ex.c"
 -#line 644 "ext/standard/url_scanner_ex.c"
++#line 646 "ext/standard/url_scanner_ex.c"
  }
- #line 536 "ext/standard/url_scanner_ex.re"
 -#line 535 "ext/standard/url_scanner_ex.re"
++#line 537 "ext/standard/url_scanner_ex.re"
  
  
  state_next_arg_begin:
  state_next_arg:
        start = YYCURSOR;
  
- #line 656 "ext/standard/url_scanner_ex.c"
 -#line 655 "ext/standard/url_scanner_ex.c"
++#line 657 "ext/standard/url_scanner_ex.c"
  {
        YYCTYPE yych;
        static const unsigned char yybm[] = {
  yy16:
        ++YYCURSOR;
  yy17:
- #line 547 "ext/standard/url_scanner_ex.re"
 -#line 546 "ext/standard/url_scanner_ex.re"
++#line 548 "ext/standard/url_scanner_ex.re"
        { passthru(STD_ARGS); goto state_plain_begin; }
- #line 714 "ext/standard/url_scanner_ex.c"
 -#line 713 "ext/standard/url_scanner_ex.c"
++#line 715 "ext/standard/url_scanner_ex.c"
  yy18:
        ++YYCURSOR;
        if (YYLIMIT <= YYCURSOR) YYFILL(1);
        if (yybm[0+yych] & 128) {
                goto yy18;
        }
- #line 545 "ext/standard/url_scanner_ex.re"
 -#line 544 "ext/standard/url_scanner_ex.re"
++#line 546 "ext/standard/url_scanner_ex.re"
        { passthru(STD_ARGS); goto state_next_arg; }
- #line 724 "ext/standard/url_scanner_ex.c"
 -#line 723 "ext/standard/url_scanner_ex.c"
++#line 725 "ext/standard/url_scanner_ex.c"
  yy21:
        yych = *++YYCURSOR;
        if (yych != '>') goto yy17;
  yy22:
        ++YYCURSOR;
- #line 544 "ext/standard/url_scanner_ex.re"
 -#line 543 "ext/standard/url_scanner_ex.re"
++#line 545 "ext/standard/url_scanner_ex.re"
        { passthru(STD_ARGS); handle_form(STD_ARGS); goto state_plain_begin; }
- #line 732 "ext/standard/url_scanner_ex.c"
 -#line 731 "ext/standard/url_scanner_ex.c"
++#line 733 "ext/standard/url_scanner_ex.c"
  yy24:
        ++YYCURSOR;
- #line 546 "ext/standard/url_scanner_ex.re"
 -#line 545 "ext/standard/url_scanner_ex.re"
++#line 547 "ext/standard/url_scanner_ex.re"
        { --YYCURSOR; STATE = STATE_ARG; goto state_arg; }
- #line 737 "ext/standard/url_scanner_ex.c"
 -#line 736 "ext/standard/url_scanner_ex.c"
++#line 738 "ext/standard/url_scanner_ex.c"
  }
- #line 548 "ext/standard/url_scanner_ex.re"
 -#line 547 "ext/standard/url_scanner_ex.re"
++#line 549 "ext/standard/url_scanner_ex.re"
  
  
  state_arg:
        start = YYCURSOR;
  
- #line 745 "ext/standard/url_scanner_ex.c"
 -#line 744 "ext/standard/url_scanner_ex.c"
++#line 746 "ext/standard/url_scanner_ex.c"
  {
        YYCTYPE yych;
        static const unsigned char yybm[] = {
        if (yych <= 'z') goto yy30;
  yy28:
        ++YYCURSOR;
- #line 554 "ext/standard/url_scanner_ex.re"
 -#line 553 "ext/standard/url_scanner_ex.re"
++#line 555 "ext/standard/url_scanner_ex.re"
        { passthru(STD_ARGS); STATE = STATE_NEXT_ARG; goto state_next_arg; }
- #line 792 "ext/standard/url_scanner_ex.c"
 -#line 791 "ext/standard/url_scanner_ex.c"
++#line 793 "ext/standard/url_scanner_ex.c"
  yy30:
        ++YYCURSOR;
        if (YYLIMIT <= YYCURSOR) YYFILL(1);
        if (yybm[0+yych] & 128) {
                goto yy30;
        }
- #line 553 "ext/standard/url_scanner_ex.re"
 -#line 552 "ext/standard/url_scanner_ex.re"
++#line 554 "ext/standard/url_scanner_ex.re"
        { passthru(STD_ARGS); handle_arg(STD_ARGS); STATE = STATE_BEFORE_VAL; goto state_before_val; }
- #line 802 "ext/standard/url_scanner_ex.c"
 -#line 801 "ext/standard/url_scanner_ex.c"
++#line 803 "ext/standard/url_scanner_ex.c"
  }
- #line 555 "ext/standard/url_scanner_ex.re"
 -#line 554 "ext/standard/url_scanner_ex.re"
++#line 556 "ext/standard/url_scanner_ex.re"
  
  
  state_before_val:
        start = YYCURSOR;
  
- #line 810 "ext/standard/url_scanner_ex.c"
 -#line 809 "ext/standard/url_scanner_ex.c"
++#line 811 "ext/standard/url_scanner_ex.c"
  {
        YYCTYPE yych;
        static const unsigned char yybm[] = {
        if (yych == '=') goto yy38;
        ++YYCURSOR;
  yy36:
- #line 561 "ext/standard/url_scanner_ex.re"
 -#line 560 "ext/standard/url_scanner_ex.re"
++#line 562 "ext/standard/url_scanner_ex.re"
        { --YYCURSOR; goto state_next_arg_begin; }
- #line 855 "ext/standard/url_scanner_ex.c"
 -#line 854 "ext/standard/url_scanner_ex.c"
++#line 856 "ext/standard/url_scanner_ex.c"
  yy37:
        yych = *(YYMARKER = ++YYCURSOR);
        if (yych == ' ') goto yy41;
@@@ -863,9 -862,9 +864,9 @@@ yy38
        if (yybm[0+yych] & 128) {
                goto yy38;
        }
- #line 560 "ext/standard/url_scanner_ex.re"
 -#line 559 "ext/standard/url_scanner_ex.re"
++#line 561 "ext/standard/url_scanner_ex.re"
        { passthru(STD_ARGS); STATE = STATE_VAL; goto state_val; }
- #line 869 "ext/standard/url_scanner_ex.c"
 -#line 868 "ext/standard/url_scanner_ex.c"
++#line 870 "ext/standard/url_scanner_ex.c"
  yy41:
        ++YYCURSOR;
        if (YYLIMIT <= YYCURSOR) YYFILL(1);
        YYCURSOR = YYMARKER;
        goto yy36;
  }
- #line 562 "ext/standard/url_scanner_ex.re"
 -#line 561 "ext/standard/url_scanner_ex.re"
++#line 563 "ext/standard/url_scanner_ex.re"
  
  
  
  state_val:
        start = YYCURSOR;
  
- #line 886 "ext/standard/url_scanner_ex.c"
 -#line 885 "ext/standard/url_scanner_ex.c"
++#line 887 "ext/standard/url_scanner_ex.c"
  {
        YYCTYPE yych;
        static const unsigned char yybm[] = {
@@@ -935,15 -934,15 +936,15 @@@ yy46
        if (yybm[0+yych] & 32) {
                goto yy46;
        }
- #line 570 "ext/standard/url_scanner_ex.re"
 -#line 569 "ext/standard/url_scanner_ex.re"
++#line 571 "ext/standard/url_scanner_ex.re"
        { handle_val(STD_ARGS, 0, ' '); goto state_next_arg_begin; }
- #line 941 "ext/standard/url_scanner_ex.c"
 -#line 940 "ext/standard/url_scanner_ex.c"
++#line 942 "ext/standard/url_scanner_ex.c"
  yy49:
        ++YYCURSOR;
  yy50:
- #line 571 "ext/standard/url_scanner_ex.re"
 -#line 570 "ext/standard/url_scanner_ex.re"
++#line 572 "ext/standard/url_scanner_ex.re"
        { passthru(STD_ARGS); goto state_next_arg_begin; }
- #line 947 "ext/standard/url_scanner_ex.c"
 -#line 946 "ext/standard/url_scanner_ex.c"
++#line 948 "ext/standard/url_scanner_ex.c"
  yy51:
        yych = *(YYMARKER = ++YYCURSOR);
        if (yych == '>') goto yy50;
@@@ -966,9 -965,9 +967,9 @@@ yy55
        goto yy50;
  yy56:
        ++YYCURSOR;
- #line 568 "ext/standard/url_scanner_ex.re"
 -#line 567 "ext/standard/url_scanner_ex.re"
++#line 569 "ext/standard/url_scanner_ex.re"
        { handle_val(STD_ARGS, 1, '"'); goto state_next_arg_begin; }
- #line 972 "ext/standard/url_scanner_ex.c"
 -#line 971 "ext/standard/url_scanner_ex.c"
++#line 973 "ext/standard/url_scanner_ex.c"
  yy58:
        ++YYCURSOR;
        if (YYLIMIT <= YYCURSOR) YYFILL(1);
@@@ -979,11 -978,11 +980,11 @@@ yy59
        }
        if (yych >= '(') goto yy55;
        ++YYCURSOR;
- #line 569 "ext/standard/url_scanner_ex.re"
 -#line 568 "ext/standard/url_scanner_ex.re"
++#line 570 "ext/standard/url_scanner_ex.re"
        { handle_val(STD_ARGS, 1, '\''); goto state_next_arg_begin; }
- #line 985 "ext/standard/url_scanner_ex.c"
 -#line 984 "ext/standard/url_scanner_ex.c"
++#line 986 "ext/standard/url_scanner_ex.c"
  }
- #line 572 "ext/standard/url_scanner_ex.re"
 -#line 571 "ext/standard/url_scanner_ex.re"
++#line 573 "ext/standard/url_scanner_ex.re"
  
  
  stop:
Simple merge