Don't add to Poller when socket is closing to prevent NPEs.
authormarkt <markt@13f79535-47bb-0310-9956-ffa450edef68>
Mon, 19 Sep 2011 17:14:10 +0000 (17:14 +0000)
committermarkt <markt@13f79535-47bb-0310-9956-ffa450edef68>
Mon, 19 Sep 2011 17:14:10 +0000 (17:14 +0000)
git-svn-id: https://svn.apache.org/repos/asf/tomcat/trunk@1172711 13f79535-47bb-0310-9956-ffa450edef68

java/org/apache/coyote/http11/Http11AprProtocol.java

index 7d1851c..163c4a4 100644 (file)
@@ -215,7 +215,7 @@ public class Http11AprProtocol extends AbstractHttp11Protocol {
                 boolean addToPoller) {
             processor.recycle();
             recycledProcessors.offer(processor);
-            if (addToPoller) {
+            if (addToPoller && proto.endpoint.isRunning()) {
                 ((AprEndpoint)proto.endpoint).getPoller().add(
                         socket.getSocket().longValue(), true);
             }
@@ -234,7 +234,7 @@ public class Http11AprProtocol extends AbstractHttp11Protocol {
 
             if (processor.isAsync()) {
                 socket.setAsync(true);
-            } else if (processor.comet) {
+            } else if (processor.comet && proto.endpoint.isRunning()) {
                 ((AprEndpoint) proto.endpoint).getCometPoller().add(
                         socket.getSocket().longValue(), false);
             }