Author: markt
Date: Thu Apr  7 16:07:56 2016
New Revision: 1738147

URL: http://svn.apache.org/viewvc?rev=1738147&view=rev
Log:
Investigating BZ 5926
An error page has to be able to call complete(). That means it needs to be able 
to call getAsycnContext() which means isStarted needs to be true for the ERROR 
state. That implies that isStarted needs to be true for the TIMING_OUT state as 
well.
This also implies that a transition form DISPATCHED to ERROR is not legal since 
that would mean moving from a state where isStarted==false to isStarted==true

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=1738147&r1=1738146&r2=1738147&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/coyote/AsyncStateMachine.java [UTF-8] 
(original)
+++ tomcat/trunk/java/org/apache/coyote/AsyncStateMachine.java [UTF-8] Thu Apr  
7 16:07:56 2016
@@ -55,13 +55,13 @@ import org.apache.tomcat.util.security.P
  * |-----------------»--------------|
  * |                               \|/
  * |   
|----------«---------------ERROR---------------------------«-------------------------------|
- * |   |      complete()         /|\   \                                       
                   |
- * |   |                          |     \---------------|                      
                   |
- * |   |                          |                     |dispatch()            
                   |
- * |   |                          |                    \|/                     
                   |
- * |   |                   error()|                     |                      
                   |
- * |   |                          |     |--|timeout()   |                      
                   |
- * |   |              post()      |     | \|/           |     post()           
                   |
+ * |   |      complete()               \                                       
                   |
+ * |   |                                \---------------|                      
                   |
+ * |   |                                                |dispatch()            
                   |
+ * |   |                                               \|/                     
                   |
+ * |   |                                                |                      
                   |
+ * |   |                                |--|timeout()   |                      
                   |
+ * |   |              post()            | \|/           |     post()           
                   |
  * |   |         |---------------»DISPATCHED«---------- | 
--------------COMPLETING«-----|         |
  * |   |         |               /|\  |                 |                 | 
/|\         |         |
  * |   |         |    |---»-------|   |                 |                 |--| 
         |         |
@@ -117,7 +117,7 @@ public class AsyncStateMachine {
         MUST_DISPATCH(true,  true,  false, true,  true),
         DISPATCHING  (true,  false, false, true,  false),
         READ_WRITE_OP(true,  true,  false, false, true),
-        ERROR        (true,  false, false, false, false);
+        ERROR        (true,  true,  false, false, false);
 
         private final boolean isAsync;
         private final boolean isStarted;



---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org

Reply via email to