This is an automated email from the ASF dual-hosted git repository.

rombert pushed a commit to annotated tag 
org.apache.sling.scripting.thymeleaf-1.1.0
in repository 
https://gitbox.apache.org/repos/asf/sling-org-apache-sling-scripting-thymeleaf.git

commit 72ef564dec0519d97c8212ad402f2328cd0f5abb
Author: Oliver Lietz <[email protected]>
AuthorDate: Thu Jan 26 21:29:19 2017 +0000

    SLING-6487 Prevent possible NPE (templateMode) in 
SlingResourceTemplateResolver
    
    git-svn-id: 
https://svn.apache.org/repos/asf/sling/trunk/contrib/scripting/org.apache.sling.scripting.thymeleaf@1780482
 13f79535-47bb-0310-9956-ffa450edef68
---
 .../thymeleaf/internal/SlingResourceTemplateResolver.java   | 13 +++++++++----
 1 file changed, 9 insertions(+), 4 deletions(-)

diff --git 
a/src/main/java/org/apache/sling/scripting/thymeleaf/internal/SlingResourceTemplateResolver.java
 
b/src/main/java/org/apache/sling/scripting/thymeleaf/internal/SlingResourceTemplateResolver.java
index 790cfdc..f28087b 100644
--- 
a/src/main/java/org/apache/sling/scripting/thymeleaf/internal/SlingResourceTemplateResolver.java
+++ 
b/src/main/java/org/apache/sling/scripting/thymeleaf/internal/SlingResourceTemplateResolver.java
@@ -118,10 +118,15 @@ public class SlingResourceTemplateResolver implements 
ITemplateResolver {
             final ITemplateResource templateResource = new 
SlingTemplateResource(resource);
             final boolean templateResourceExistenceVerified = false;
             final TemplateMode templateMode = 
templateModeProvider.provideTemplateMode(resource);
-            logger.debug("using template mode {} for template '{}'", 
templateMode, template);
-            final boolean useDecoupledLogic = templateMode.isMarkup() && 
configuration.useDecoupledLogic();
-            final ICacheEntryValidity validity = 
NonCacheableCacheEntryValidity.INSTANCE;
-            return new TemplateResolution(templateResource, 
templateResourceExistenceVerified, templateMode, useDecoupledLogic, validity);
+            if (templateMode == null) {
+                logger.warn("template mode for template '{}' is null, not 
resolving template", template);
+                return null;
+            } else {
+                logger.debug("using template mode {} for template '{}'", 
templateMode, template);
+                final boolean useDecoupledLogic = templateMode.isMarkup() && 
configuration.useDecoupledLogic();
+                final ICacheEntryValidity validity = 
NonCacheableCacheEntryValidity.INSTANCE;
+                return new TemplateResolution(templateResource, 
templateResourceExistenceVerified, templateMode, useDecoupledLogic, validity);
+            }
         } else {
             logger.error("context is not an instance of SlingContext");
             return null;

-- 
To stop receiving notification emails like this one, please contact
"[email protected]" <[email protected]>.

Reply via email to