diff --git a/core/lib/Drupal/Core/Template/TwigEnvironment.php b/core/lib/Drupal/Core/Template/TwigEnvironment.php index 023556d..0c6029f 100644 --- a/core/lib/Drupal/Core/Template/TwigEnvironment.php +++ b/core/lib/Drupal/Core/Template/TwigEnvironment.php @@ -126,12 +126,12 @@ public function getCacheFilename($name) { $class = substr($this->getTemplateClass($name), strlen($this->templateClassPrefix)); - // The first part is what is invalidated. if (strpos($name, '{# inline_template_start #}') !== FALSE) { // $name is an inline template, and can have characters that are not valid // for a filename. - $name = 'inline-template-' . sha1($name); + $name = 'inline-template-' . hash('sha256', $name); } + // The first part is what is invalidated. return $this->templateCacheFilenamePrefix . '_' . basename($name) . '_' . $class; } diff --git a/core/modules/system/src/Tests/Theme/TwigEnvironmentTest.php b/core/modules/system/src/Tests/Theme/TwigEnvironmentTest.php index 51663fc..07eb8ae 100644 --- a/core/modules/system/src/Tests/Theme/TwigEnvironmentTest.php +++ b/core/modules/system/src/Tests/Theme/TwigEnvironmentTest.php @@ -70,7 +70,7 @@ public function testInlineTemplate() { $name = '{# inline_template_start #}test-with-context {{ llama }}'; $hash = $this->container->getParameter('twig_extension_hash'); $class = substr($environment->getTemplateClass($name), strlen('__TwigTemplate_')); - $expected = $hash . '_inline-template-' . sha1($name) . '_' . $class; + $expected = $hash . '_inline-template-' . hash('sha256', $name) . '_' . $class; $this->assertEqual($expected, $environment->getCacheFilename($name)); }