You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by ma...@apache.org on 2009/07/17 22:12:49 UTC
svn commit: r795210 -
/tomcat/trunk/java/org/apache/jasper/compiler/JspConfig.java
Author: markt
Date: Fri Jul 17 20:12:49 2009
New Revision: 795210
URL: http://svn.apache.org/viewvc?rev=795210&view=rev
Log:
Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=41661
Thread safety issue with JspConfig.init(). There is one JspConfig object per context and as per 41661, issues have been seen with this on real systems.
Modified:
tomcat/trunk/java/org/apache/jasper/compiler/JspConfig.java
Modified: tomcat/trunk/java/org/apache/jasper/compiler/JspConfig.java
URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/jasper/compiler/JspConfig.java?rev=795210&r1=795209&r2=795210&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/jasper/compiler/JspConfig.java (original)
+++ tomcat/trunk/java/org/apache/jasper/compiler/JspConfig.java Fri Jul 17 20:12:49 2009
@@ -48,7 +48,7 @@
private Vector<JspPropertyGroup> jspProperties = null;
private ServletContext ctxt;
- private boolean initialized = false;
+ private volatile boolean initialized = false;
private String defaultIsXml = null; // unspecified
private String defaultIsELIgnored = null; // unspecified
@@ -218,13 +218,17 @@
private void init() throws JasperException {
if (!initialized) {
- processWebDotXml(ctxt);
- defaultJspProperty = new JspProperty(defaultIsXml,
- defaultIsELIgnored,
- defaultIsScriptingInvalid,
- null, null, null, defaultDeferedSyntaxAllowedAsLiteral,
- defaultTrimDirectiveWhitespaces);
- initialized = true;
+ synchronized (this) {
+ if (!initialized) {
+ processWebDotXml(ctxt);
+ defaultJspProperty = new JspProperty(defaultIsXml,
+ defaultIsELIgnored,
+ defaultIsScriptingInvalid,
+ null, null, null, defaultDeferedSyntaxAllowedAsLiteral,
+ defaultTrimDirectiveWhitespaces);
+ initialized = true;
+ }
+ }
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org