Author: markt
Date: Thu Aug 7 09:44:05 2014
New Revision: 1616452
URL: http://svn.apache.org/r1616452
Log:
Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=56736
Avoid incorrect ISE if the timeout fires after a non-container thread has
called dispatch() but before a container thread processed the dispatch()
Modified:
tomcat/trunk/java/org/apache/coyote/AsyncStateMachine.java
Modified: tomcat/trunk/java/org/apache/coyote/AsyncStateMachine.java
URL:
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/AsyncStateMachine.java?rev=1616452&r1=1616451&r2=1616452&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/coyote/AsyncStateMachine.java (original)
+++ tomcat/trunk/java/org/apache/coyote/AsyncStateMachine.java Thu Aug 7
09:44:05 2014
@@ -259,9 +259,10 @@ public class AsyncStateMachine<S> {
state = AsyncState.TIMING_OUT;
return true;
} else if (state == AsyncState.COMPLETING ||
+ state == AsyncState.DISPATCHING ||
state == AsyncState.DISPATCHED) {
- // NOOP - App called complete between the the timeout firing and
- // execution reaching this point
+ // NOOP - App called complete() or dispatch() between the the
+ // timeout firing and execution reaching this point
return false;
} else {
throw new IllegalStateException(
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]