cast $name to a string as $name can in fact be an object implementing __toString...
authorMiha Vrhovnik <miha.vrhovnik@cordia.si>
Tue, 17 Jan 2012 18:22:20 +0000 (19:22 +0100)
committerMiha Vrhovnik <miha.vrhovnik@cordia.si>
Tue, 17 Jan 2012 18:22:20 +0000 (19:22 +0100)
lib/Twig/Template.php

index 86ca5c6..d824d08 100644 (file)
@@ -98,6 +98,8 @@ abstract class Twig_Template implements Twig_TemplateInterface
      */
     public function displayParentBlock($name, array $context, array $blocks = array())
     {
+        $name = (string) $name;
+        
         if (isset($this->traits[$name])) {
             $this->traits[$name][0]->displayBlock($name, $context, $blocks);
         } elseif (false !== $parent = $this->getParent($context)) {
@@ -119,6 +121,8 @@ abstract class Twig_Template implements Twig_TemplateInterface
      */
     public function displayBlock($name, array $context, array $blocks = array())
     {
+        $name = (string) $name;
+        
         if (isset($blocks[$name])) {
             $b = $blocks;
             unset($b[$name]);
@@ -189,7 +193,7 @@ abstract class Twig_Template implements Twig_TemplateInterface
      */
     public function hasBlock($name)
     {
-        return isset($this->blocks[$name]);
+        return isset($this->blocks[(string) $name]);
     }
 
     /**