Author: markt Date: Fri Mar 7 14:04:50 2014 New Revision: 1575262 URL: http://svn.apache.org/r1575262 Log: Improve the robustness of web application undeployment based on some code analysis triggered by the report for BZ 54315
Modified: tomcat/trunk/java/org/apache/catalina/core/StandardContext.java tomcat/trunk/java/org/apache/catalina/core/StandardWrapper.java tomcat/trunk/webapps/docs/changelog.xml Modified: tomcat/trunk/java/org/apache/catalina/core/StandardContext.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/core/StandardContext.java?rev=1575262&r1=1575261&r2=1575262&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/catalina/core/StandardContext.java (original) +++ tomcat/trunk/java/org/apache/catalina/core/StandardContext.java Fri Mar 7 14:04:50 2014 @@ -475,7 +475,7 @@ public class StandardContext extends Con /** * The request processing pause flag (while reloading occurs) */ - private boolean paused = false; + private volatile boolean paused = false; /** Modified: tomcat/trunk/java/org/apache/catalina/core/StandardWrapper.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/core/StandardWrapper.java?rev=1575262&r1=1575261&r2=1575262&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/catalina/core/StandardWrapper.java (original) +++ tomcat/trunk/java/org/apache/catalina/core/StandardWrapper.java Fri Mar 7 14:04:50 2014 @@ -200,7 +200,7 @@ public class StandardWrapper extends Con /** * Are we unloading our servlet instance at the moment? */ - protected boolean unloading = false; + protected volatile boolean unloading = false; /** @@ -1076,6 +1076,11 @@ public class StandardWrapper extends Con */ public synchronized Servlet loadServlet() throws ServletException { + if (unloading) { + throw new ServletException( + sm.getString("standardWrapper.unloading", getName())); + } + // Nothing to do if we already have an instance or an instance pool if (!singleThreadModel && (instance != null)) return instance; Modified: tomcat/trunk/webapps/docs/changelog.xml URL: http://svn.apache.org/viewvc/tomcat/trunk/webapps/docs/changelog.xml?rev=1575262&r1=1575261&r2=1575262&view=diff ============================================================================== --- tomcat/trunk/webapps/docs/changelog.xml (original) +++ tomcat/trunk/webapps/docs/changelog.xml Fri Mar 7 14:04:50 2014 @@ -53,6 +53,10 @@ application. (markt) </fix> <fix> + Improve the robustness of web application undeployment based on some + code analysis triggered by the report for <bug>54315</bug>. (markt) + </fix> + <fix> <bug>56125</bug>: Correctly construct the URL for a resource that represents the root of a JAR file. (markt) </fix> --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org