Verified Commit ea023626 authored by Dave Long's avatar Dave Long
Browse files

Issue #3442833 by binoli lalani, vivek panicker, pradhumanjain2311, longwave,...

Issue #3442833 by binoli lalani, vivek panicker, pradhumanjain2311, longwave, prudloff, smustgrave, alexpott: Undefined array key warning in UrlHelper::parse()

(cherry picked from commit 9307769b)
parent 3b341184
Loading
Loading
Loading
Loading
Loading
+3 −2
Original line number Diff line number Diff line
@@ -200,9 +200,10 @@ public static function parse($url) {
    // appears in front of the '?' query argument delimiter.
    $scheme_delimiter_position = strpos($url, '://');
    $query_delimiter_position = strpos($url, '?');
    if ($scheme_delimiter_position !== FALSE && ($query_delimiter_position === FALSE || $scheme_delimiter_position < $query_delimiter_position)) {
    $fragment_delimiter_position = strpos($url, '#');
    if ($scheme_delimiter_position !== FALSE && ($query_delimiter_position === FALSE || $scheme_delimiter_position < $query_delimiter_position) && ($fragment_delimiter_position === FALSE || $scheme_delimiter_position < $fragment_delimiter_position)) {
      // Split off the fragment, if any.
      if (str_contains($url, '#')) {
      if ($fragment_delimiter_position !== FALSE) {
        [$url, $options['fragment']] = explode('#', $url, 2);
      }

+8 −0
Original line number Diff line number Diff line
@@ -376,6 +376,14 @@ public static function providerTestParse() {
          'fragment' => 'footer',
        ],
      ],
      'Malformed URL should not trigger PHP warnings' => [
        "#/://#",
        [
          'path' => NULL,
          'query' => [],
          'fragment' => "/://#",
        ],
      ],
    ];
  }