summaryrefslogtreecommitdiff
path: root/inc/lib/Twig/Extension/StringLoader.php
diff options
context:
space:
mode:
Diffstat (limited to 'inc/lib/Twig/Extension/StringLoader.php')
-rwxr-xr-x[-rw-r--r--]inc/lib/Twig/Extension/StringLoader.php12
1 files changed, 6 insertions, 6 deletions
diff --git a/inc/lib/Twig/Extension/StringLoader.php b/inc/lib/Twig/Extension/StringLoader.php
index 20f3f994..5e1a60d0 100644..100755
--- a/inc/lib/Twig/Extension/StringLoader.php
+++ b/inc/lib/Twig/Extension/StringLoader.php
@@ -43,16 +43,16 @@ class Twig_Extension_StringLoader extends Twig_Extension
*/
function twig_template_from_string(Twig_Environment $env, $template)
{
- static $loader;
+ $name = sprintf('__string_template__%s', hash('sha256', uniqid(mt_rand(), true), false));
- if (null === $loader) {
- $loader = new Twig_Loader_String();
- }
+ $loader = new Twig_Loader_Chain(array(
+ new Twig_Loader_Array(array($name => $template)),
+ $current = $env->getLoader(),
+ ));
- $current = $env->getLoader();
$env->setLoader($loader);
try {
- $template = $env->loadTemplate($template);
+ $template = $env->loadTemplate($name);
} catch (Exception $e) {
$env->setLoader($current);