diff --git a/core/modules/media/src/OEmbed/UrlResolver.php b/core/modules/media/src/OEmbed/UrlResolver.php index 0c0ae93377739cdf40242e6e7c4c6ea22d18d7c3..50f9b2df541bef6247376c78683d573d5a5a0670 100644 --- a/core/modules/media/src/OEmbed/UrlResolver.php +++ b/core/modules/media/src/OEmbed/UrlResolver.php @@ -176,7 +176,7 @@ public function getResourceUrl($url, $max_width = NULL, $max_height = NULL) { // provide extra parameters in the query string. For example, Instagram also // supports the 'omitscript' parameter. $this->moduleHandler->alter('oembed_resource_url', $parsed_url, $provider); - $resource_url = $parsed_url['path'] . '?' . rawurldecode(UrlHelper::buildQuery($parsed_url['query'])); + $resource_url = $parsed_url['path'] . '?' . UrlHelper::buildQuery($parsed_url['query']); $this->urlCache[$url] = $resource_url; $this->cacheBackend->set($cache_id, $resource_url); diff --git a/core/modules/media/tests/src/Functional/UrlResolverTest.php b/core/modules/media/tests/src/Functional/UrlResolverTest.php index 43ac2f1402a27934e7e91fd28a456df186c12095..201a73e8f922e82fcb775da4711d05b978a9c2b3 100644 --- a/core/modules/media/tests/src/Functional/UrlResolverTest.php +++ b/core/modules/media/tests/src/Functional/UrlResolverTest.php @@ -45,19 +45,19 @@ public static function providerEndpointMatching() { return [ 'match by endpoint: Twitter' => [ 'https://twitter.com/Dries/status/999985431595880448', - 'https://publish.twitter.com/oembed?url=https://twitter.com/Dries/status/999985431595880448', + 'https://publish.twitter.com/oembed?url=https%3A//twitter.com/Dries/status/999985431595880448', ], 'match by endpoint: Vimeo' => [ 'https://vimeo.com/14782834', - 'https://vimeo.com/api/oembed.json?url=https://vimeo.com/14782834', + 'https://vimeo.com/api/oembed.json?url=https%3A//vimeo.com/14782834', ], 'match by endpoint: Dailymotion' => [ 'https://www.dailymotion.com/video/x2vzluh', - 'https://www.dailymotion.com/services/oembed?url=https://www.dailymotion.com/video/x2vzluh', + 'https://www.dailymotion.com/services/oembed?url=https%3A//www.dailymotion.com/video/x2vzluh', ], 'match by endpoint: Facebook' => [ 'https://www.facebook.com/facebook/videos/10153231379946729/', - 'https://www.facebook.com/plugins/video/oembed.json?url=https://www.facebook.com/facebook/videos/10153231379946729/', + 'https://www.facebook.com/plugins/video/oembed.json?url=https%3A//www.facebook.com/facebook/videos/10153231379946729/', ], ]; }