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 2016/05/10 08:40:01 UTC
svn commit: r1743124 - in /tomcat/trunk:
java/org/apache/catalina/core/ContainerBase.java webapps/docs/changelog.xml
Author: markt
Date: Tue May 10 08:40:01 2016
New Revision: 1743124
URL: http://svn.apache.org/viewvc?rev=1743124&view=rev
Log:
Ensure that the process to remove a child container is the reverse of the process to add one.
Patch provided by Huxing Zhang.
Modified:
tomcat/trunk/java/org/apache/catalina/core/ContainerBase.java
tomcat/trunk/webapps/docs/changelog.xml
Modified: tomcat/trunk/java/org/apache/catalina/core/ContainerBase.java
URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/core/ContainerBase.java?rev=1743124&r1=1743123&r2=1743124&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/catalina/core/ContainerBase.java (original)
+++ tomcat/trunk/java/org/apache/catalina/core/ContainerBase.java Tue May 10 08:40:01 2016
@@ -810,12 +810,6 @@ public abstract class ContainerBase exte
return;
}
- synchronized(children) {
- if (children.get(child.getName()) == null)
- return;
- children.remove(child.getName());
- }
-
try {
if (child.getState().isAvailable()) {
child.stop();
@@ -824,8 +818,6 @@ public abstract class ContainerBase exte
log.error("ContainerBase.removeChild: stop: ", e);
}
- fireContainerEvent(REMOVE_CHILD_EVENT, child);
-
try {
// child.destroy() may have already been called which would have
// triggered this call. If that is the case, no need to destroy the
@@ -837,6 +829,13 @@ public abstract class ContainerBase exte
log.error("ContainerBase.removeChild: destroy: ", e);
}
+ synchronized(children) {
+ if (children.get(child.getName()) == null)
+ return;
+ children.remove(child.getName());
+ }
+
+ fireContainerEvent(REMOVE_CHILD_EVENT, child);
}
Modified: tomcat/trunk/webapps/docs/changelog.xml
URL: http://svn.apache.org/viewvc/tomcat/trunk/webapps/docs/changelog.xml?rev=1743124&r1=1743123&r2=1743124&view=diff
==============================================================================
--- tomcat/trunk/webapps/docs/changelog.xml (original)
+++ tomcat/trunk/webapps/docs/changelog.xml Tue May 10 08:40:01 2016
@@ -217,6 +217,11 @@
<bug>59437</bug>: Ensure that the JASPIC <code>CallbackHandler</code> is
thread-safe. (markt)
</fix>
+ <fix>
+ <bug>59450</bug>: In <code>ContainerBase</code>, ensure that the process
+ to remove a child container is the reverse of the process to add one.
+ Patch provided by Huxing Zhang. (markt)
+ </fix>
</changelog>
</subsection>
<subsection name="Coyote">
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org