Author: markt Date: Thu Oct 25 22:14:29 2012 New Revision: 1402346 URL: http://svn.apache.org/viewvc?rev=1402346&view=rev Log: Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=54022 Ensure Comet END event is triggered on client disconnect with APR/native on Windows Vista/2k8 or later. Patch provided by Douglas Beachy.
Modified: tomcat/tc7.0.x/trunk/ (props changed) tomcat/tc7.0.x/trunk/java/org/apache/coyote/AbstractProtocol.java tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml Propchange: tomcat/tc7.0.x/trunk/ ------------------------------------------------------------------------------ Merged /tomcat/trunk:r1402345 Modified: tomcat/tc7.0.x/trunk/java/org/apache/coyote/AbstractProtocol.java URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/coyote/AbstractProtocol.java?rev=1402346&r1=1402345&r2=1402346&view=diff ============================================================================== --- tomcat/tc7.0.x/trunk/java/org/apache/coyote/AbstractProtocol.java (original) +++ tomcat/tc7.0.x/trunk/java/org/apache/coyote/AbstractProtocol.java Thu Oct 25 22:14:29 2012 @@ -573,9 +573,13 @@ public abstract class AbstractProtocol i SocketState state = SocketState.CLOSED; do { - if (status == SocketStatus.DISCONNECT) { - //do nothing here, just wait for it to get recycled - } else if (processor.isAsync() || state == SocketState.ASYNC_END) { + if (status == SocketStatus.DISCONNECT && + !processor.isComet()) { + // Do nothing here, just wait for it to get recycled + // Don't do this for Comet we need to generate an end + // event (see BZ 54022) + } else if (processor.isAsync() || + state == SocketState.ASYNC_END) { state = processor.asyncDispatch(status); } else if (processor.isComet()) { state = processor.event(status); Modified: tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml?rev=1402346&r1=1402345&r2=1402346&view=diff ============================================================================== --- tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml (original) +++ tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml Thu Oct 25 22:14:29 2012 @@ -72,6 +72,11 @@ Correct an issue that prevented WebSockets from being used over SSL when using the HTTP NIO connector. (markt) </fix> + <fix> + <bug>54022</bug>: Ensure the Comet END event is triggered on client + disconnect with APR/native on Windows Vista/2k8 or later. Patch provided + by Douglas Beachy. (markt) + </fix> </changelog> </subsection> <subsection name="Jasper"> --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org