From 6675d873629276c20386c45760df30f0dcbdde46 Mon Sep 17 00:00:00 2001 From: kkolinko Date: Tue, 9 Feb 2010 01:06:01 +0000 Subject: [PATCH] Fix parsing bug spotted when reviewing r907538 Allowing #{} expressions to be parsed even when they are disabled breaks ${} expressions if they are intermixed with them. See the testcase added in r907860, r907862. git-svn-id: https://svn.apache.org/repos/asf/tomcat/trunk@907864 13f79535-47bb-0310-9956-ffa450edef68 --- java/org/apache/jasper/compiler/Parser.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/java/org/apache/jasper/compiler/Parser.java b/java/org/apache/jasper/compiler/Parser.java index dcef0fb6b..3955859e9 100644 --- a/java/org/apache/jasper/compiler/Parser.java +++ b/java/org/apache/jasper/compiler/Parser.java @@ -1415,7 +1415,9 @@ class Parser implements TagConstants { parseXMLTemplateText(parent); } else if (!pageInfo.isELIgnored() && reader.matches("${")) { parseELExpression(parent, '$'); - } else if (!pageInfo.isELIgnored() && reader.matches("#{")) { + } else if (!pageInfo.isELIgnored() + && !pageInfo.isDeferredSyntaxAllowedAsLiteral() + && reader.matches("#{")) { parseELExpression(parent, '#'); } else if (reader.matches("