Author: lukaszlenart
Date: Fri Oct 18 08:39:11 2013
New Revision: 1533360

URL: http://svn.apache.org/r1533360
Log:
WW-4162 Doesn't check for disallowed ognl expressions if getting from 
expression cache

Modified:
    
struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/ognl/OgnlUtil.java

Modified: 
struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/ognl/OgnlUtil.java
URL: 
http://svn.apache.org/viewvc/struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/ognl/OgnlUtil.java?rev=1533360&r1=1533359&r2=1533360&view=diff
==============================================================================
--- 
struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/ognl/OgnlUtil.java
 (original)
+++ 
struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/ognl/OgnlUtil.java
 Fri Oct 18 08:39:11 2013
@@ -266,17 +266,21 @@ public class OgnlUtil {
             tree = expressions.get(expression);
             if (tree == null) {
                 tree = Ognl.parseExpression(expression);
+                checkEnableEvalExpression(tree, context);
                 expressions.putIfAbsent(expression, tree);
             }
         } else {
             tree = Ognl.parseExpression(expression);
+            checkEnableEvalExpression(tree, context);
         }
 
+        return tree;
+    }
+    
+    private void checkEnableEvalExpression(Object tree, Map<String, Object> 
context) throws OgnlException {
         if (!enableEvalExpression && isEvalExpression(tree, context)) {
-            throw new OgnlException("Eval expressions has been disabled");
+            throw new OgnlException("Eval expressions has been disabled!");
         }
-
-        return tree;
     }
 
     /**


Reply via email to