diff --git a/core/lib/Drupal/Core/Render/Element/HtmlTag.php b/core/lib/Drupal/Core/Render/Element/HtmlTag.php index 44bf835..1d27eac 100644 --- a/core/lib/Drupal/Core/Render/Element/HtmlTag.php +++ b/core/lib/Drupal/Core/Render/Element/HtmlTag.php @@ -8,6 +8,7 @@ namespace Drupal\Core\Render\Element; use Drupal\Component\Utility\SafeMarkup; +use Drupal\Core\Render\SafeString; use Drupal\Component\Utility\Xss; use Drupal\Core\Template\Attribute; @@ -183,17 +184,17 @@ public static function preRenderConditionalComments($element) { $suffix = Xss::filterAdmin($suffix); } - // Now calling SafeMarkup::set is safe, because we ensured the - // data coming in was at least admin escaped. + // We ensured earlier in this method that $expression, $prefix and $suffix + // were at least admin escaped, so now calling SafeString::create() is safe. if (!$browsers['!IE']) { // "downlevel-hidden". - $element['#prefix'] = SafeMarkup::set("\n\n"); + $element['#prefix'] = SafeString::create("\n\n"); } else { // "downlevel-revealed". - $element['#prefix'] = SafeMarkup::set("\n\n" . $prefix); - $element['#suffix'] = SafeMarkup::set($suffix . "\n"); + $element['#prefix'] = SafeString::create("\n\n" . $prefix); + $element['#suffix'] = SafeString::create($suffix . "\n"); } return $element; diff --git a/core/tests/Drupal/Tests/Core/Render/Element/HtmlTagTest.php b/core/tests/Drupal/Tests/Core/Render/Element/HtmlTagTest.php index 2135344..19a0c1b 100644 --- a/core/tests/Drupal/Tests/Core/Render/Element/HtmlTagTest.php +++ b/core/tests/Drupal/Tests/Core/Render/Element/HtmlTagTest.php @@ -7,7 +7,7 @@ namespace Drupal\Tests\Core\Render\Element; -use Drupal\Component\Utility\SafeMarkup; +use Drupal\Core\Render\SafeString; use Drupal\Tests\UnitTestCase; use Drupal\Core\Render\Element\HtmlTag; @@ -87,10 +87,10 @@ public function providerPreRenderHtmlTag() { */ public function testPreRenderConditionalComments($element, $expected, $set_safe = FALSE) { if ($set_safe) { - SafeMarkup::set($element['#prefix']); - SafeMarkup::set($element['#suffix']); + $element['#prefix'] = SafeString::create($element['#prefix']); + $element['#suffix'] = SafeString::create($element['#suffix']); } - $this->assertSame($expected, HtmlTag::preRenderConditionalComments($element)); + $this->assertEquals($expected, HtmlTag::preRenderConditionalComments($element)); } /**