From: fhanik Date: Fri, 26 Mar 2010 16:21:57 +0000 (+0000) Subject: Adjust startAsync().complete() behavior X-Git-Url: https://git.internetallee.de/?a=commitdiff_plain;h=6e252a11ceb8b930e0aae7c04e67f1e4125ae3bb;p=tomcat7.0 Adjust startAsync().complete() behavior git-svn-id: https://svn.apache.org/repos/asf/tomcat/trunk@927951 13f79535-47bb-0310-9956-ffa450edef68 --- diff --git a/java/org/apache/catalina/core/AsyncContextImpl.java b/java/org/apache/catalina/core/AsyncContextImpl.java index 0a4085809..5abda6f28 100644 --- a/java/org/apache/catalina/core/AsyncContextImpl.java +++ b/java/org/apache/catalina/core/AsyncContextImpl.java @@ -74,8 +74,10 @@ public class AsyncContextImpl implements AsyncContext { public void complete() { if (state.get()==AsyncState.COMPLETING) { //do nothing - } else if (state.compareAndSet(AsyncState.STARTED, AsyncState.COMPLETING) || - state.compareAndSet(AsyncState.DISPATCHED, AsyncState.COMPLETING)) { + } else if (state.compareAndSet(AsyncState.STARTED, AsyncState.COMPLETING)) { + // TODO SERVLET3 - async + doInternalComplete(false); + } else if (state.compareAndSet(AsyncState.DISPATCHED, AsyncState.COMPLETING)) { // TODO SERVLET3 - async AtomicBoolean dispatched = new AtomicBoolean(false); request.getCoyoteRequest().action(ActionCode.ACTION_ASYNC_COMPLETE,dispatched);