Author: markt
Date: Wed Mar 11 19:57:07 2015
New Revision: 1665986

URL: http://svn.apache.org/r1665986
Log:
Ensure all additions to the Poller go through the SocketWrapper so it
can check if the socket has been closed first.

Modified:
    tomcat/trunk/java/org/apache/coyote/ajp/AjpAprProtocol.java
    tomcat/trunk/java/org/apache/coyote/http11/Http11AprProtocol.java
    tomcat/trunk/java/org/apache/tomcat/util/net/AprEndpoint.java

Modified: tomcat/trunk/java/org/apache/coyote/ajp/AjpAprProtocol.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/ajp/AjpAprProtocol.java?rev=1665986&r1=1665985&r2=1665986&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/coyote/ajp/AjpAprProtocol.java (original)
+++ tomcat/trunk/java/org/apache/coyote/ajp/AjpAprProtocol.java Wed Mar 11 
19:57:07 2015
@@ -90,9 +90,8 @@ public class AjpAprProtocol extends Abst
             processor.recycle();
             recycledProcessors.push(processor);
             if (addToPoller) {
-                ((AprEndpoint)getProtocol().getEndpoint()).getPoller().add(
-                        socket.getSocket().longValue(),
-                        getProtocol().getEndpoint().getKeepAliveTimeout(), 
true, false);
+                
socket.setReadTimeout(getProtocol().getEndpoint().getKeepAliveTimeout());
+                socket.registerReadInterest();
             }
         }
     }

Modified: tomcat/trunk/java/org/apache/coyote/http11/Http11AprProtocol.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/http11/Http11AprProtocol.java?rev=1665986&r1=1665985&r2=1665986&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/coyote/http11/Http11AprProtocol.java (original)
+++ tomcat/trunk/java/org/apache/coyote/http11/Http11AprProtocol.java Wed Mar 
11 19:57:07 2015
@@ -221,9 +221,8 @@ public class Http11AprProtocol extends A
             processor.recycle();
             recycledProcessors.push(processor);
             if (addToPoller && getProtocol().getEndpoint().isRunning()) {
-                ((AprEndpoint)getProtocol().getEndpoint()).getPoller().add(
-                        socket.getSocket().longValue(),
-                        getProtocol().getEndpoint().getKeepAliveTimeout(), 
true, false);
+                
socket.setReadTimeout(getProtocol().getEndpoint().getKeepAliveTimeout());
+                socket.registerReadInterest();
             }
         }
 
@@ -262,7 +261,7 @@ public class Http11AprProtocol extends A
                     // Connector has been stopped
                     release(socket, processor, false);
                 } else {
-                    p.add(socket.getSocket().longValue(), -1, true, false);
+                    socket.registerReadInterest();
                 }
             }
         }

Modified: tomcat/trunk/java/org/apache/tomcat/util/net/AprEndpoint.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/net/AprEndpoint.java?rev=1665986&r1=1665985&r2=1665986&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/tomcat/util/net/AprEndpoint.java (original)
+++ tomcat/trunk/java/org/apache/tomcat/util/net/AprEndpoint.java Wed Mar 11 
19:57:07 2015
@@ -1461,7 +1461,7 @@ public class AprEndpoint extends Abstrac
          * @param read to do read polling
          * @param write to do write polling
          */
-        public void add(long socket, int timeout, boolean read, boolean write) 
{
+        private void add(long socket, int timeout, boolean read, boolean 
write) {
             add(socket, timeout,
                     (read ? Poll.APR_POLLIN : 0) |
                     (write ? Poll.APR_POLLOUT : 0));



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to