From 2a8992a8b9d174cfbbd3030dfc872a9a50dccf2c Mon Sep 17 00:00:00 2001 From: kaldari Date: Thu, 19 Mar 2015 17:09:13 -0700 Subject: [PATCH] Make sure template function is callable from processTemplate() Change-Id: Id9df4062754b02e7217779bc6c0ba42d457e9942 --- includes/TemplateParser.php | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/includes/TemplateParser.php b/includes/TemplateParser.php index a22f2801d9..65904a01e0 100644 --- a/includes/TemplateParser.php +++ b/includes/TemplateParser.php @@ -79,7 +79,7 @@ class TemplateParser { */ public function getTemplate( $templateName ) { // If a renderer has already been defined for this template, reuse it - if ( isset( $this->renderers[$templateName] ) ) { + if ( isset( $this->renderers[$templateName] ) && is_callable( $this->renderers[$templateName] ) ) { return $this->renderers[$templateName]; } @@ -134,6 +134,9 @@ class TemplateParser { } $renderer = eval( $code ); + if ( !is_callable( $renderer ) ) { + throw new RuntimeException( "Requested template, {$templateName}, is not callable" ); + } return $this->renderers[$templateName] = $renderer; } -- 2.20.1