Bug 57433

Summary: Double-check locking in ExpressionEvaluatorManager
Product: Taglibs Reporter: Jeremy Boynes <jboynes>
Component: Standard TaglibAssignee: Tomcat Developers Mailing List <dev>
Status: RESOLVED FIXED    
Severity: minor    
Priority: P2    
Version: 1.2.1   
Target Milestone: ---   
Hardware: All   
OS: All   
Bug Depends on: 25967    
Bug Blocks:    

Description Jeremy Boynes 2015-01-11 19:26:50 UTC
http://svn.apache.org/viewvc/tomcat/taglibs/standard/tags/taglibs-standard-1.2.1/jstlel/src/main/java/org/apache/taglibs/standard/lang/support/ExpressionEvaluatorManager.java?view=markup#l103

The default implementation, org.apache.taglibs.standard.lang.jstl.Evaluator, does not have any instance fields so we may not see issues in the wild. The taglibs code specifies a constant value for the name so it will always use that implementation. However, other implementations stored in the cache may not be safe.
Comment 1 Jeremy Boynes 2015-01-11 21:39:32 UTC
Fixed in http://svn.apache.org/r1650974

As our code always uses our implementation, use a single instance of that.

Deprecate the public method that provides access to the cache in anticipation
of removal in a future major version.