File tree Expand file tree Collapse file tree 1 file changed +7
-5
lines changed
src/Symfony/Component/Templating Expand file tree Collapse file tree 1 file changed +7
-5
lines changed Original file line number Diff line number Diff line change @@ -75,24 +75,26 @@ public function render($name, array $parameters = array())
75
75
{
76
76
$ template = $ this ->load ($ name );
77
77
78
- $ this ->current = $ name ;
79
- $ this ->parents [$ name ] = null ;
78
+ $ key = md5 (serialize ($ template ));
79
+
80
+ $ this ->current = $ key ;
81
+ $ this ->parents [$ key ] = null ;
80
82
81
83
// attach the global variables
82
84
$ parameters = array_replace ($ this ->getGlobals (), $ parameters );
83
85
84
86
// render
85
87
if (false === $ content = $ this ->evaluate ($ template , $ parameters )) {
86
- throw new \RuntimeException (sprintf ('The template "%s" cannot be rendered. ' , $ name ));
88
+ throw new \RuntimeException (sprintf ('The template "%s" cannot be rendered. ' , var_export ( $ template , true ) ));
87
89
}
88
90
89
91
// decorator
90
- if ($ this ->parents [$ name ]) {
92
+ if ($ this ->parents [$ key ]) {
91
93
$ slots = $ this ->get ('slots ' );
92
94
$ this ->stack [] = $ slots ->get ('_content ' );
93
95
$ slots ->set ('_content ' , $ content );
94
96
95
- $ content = $ this ->render ($ this ->parents [$ name ], $ parameters );
97
+ $ content = $ this ->render ($ this ->parents [$ key ], $ parameters );
96
98
97
99
$ slots ->set ('_content ' , array_pop ($ this ->stack ));
98
100
}
You can’t perform that action at this time.
0 commit comments