[Bug 349870] proxy servlet protect continuation against fast failing exchanges

git-svn-id: svn+ssh://dev.eclipse.org/svnroot/rt/org.eclipse.jetty/jetty/trunk@3401 7e9141cc-0065-0410-87d8-b60c137991c4
This commit is contained in:
Jesse McConnell 2011-06-20 20:36:20 +00:00
parent bb6038b716
commit 2f7eb54e0f
1 changed files with 14 additions and 2 deletions

View File

@ -485,8 +485,14 @@ public class ProxyServlet implements Servlet
protected void onConnectionFailed(Throwable ex) protected void onConnectionFailed(Throwable ex)
{ {
handleOnConnectionFailed(ex,request,response); handleOnConnectionFailed(ex,request,response);
// it is possible this might trigger before the
// continuation.suspend()
if (!continuation.isInitial())
{
continuation.complete(); continuation.complete();
} }
}
protected void onException(Throwable ex) protected void onException(Throwable ex)
{ {
@ -496,8 +502,14 @@ public class ProxyServlet implements Servlet
return; return;
} }
handleOnException(ex,request,response); handleOnException(ex,request,response);
// it is possible this might trigger before the
// continuation.suspend()
if (!continuation.isInitial())
{
continuation.complete(); continuation.complete();
} }
}
protected void onExpire() protected void onExpire()
{ {