Author: markt Date: Mon Apr 25 19:06:07 2016 New Revision: 1740877 URL: http://svn.apache.org/viewvc?rev=1740877&view=rev Log: Better fix for failing unit test
Modified: tomcat/tc8.0.x/trunk/java/org/apache/coyote/http11/upgrade/Nio2ServletInputStream.java Modified: tomcat/tc8.0.x/trunk/java/org/apache/coyote/http11/upgrade/Nio2ServletInputStream.java URL: http://svn.apache.org/viewvc/tomcat/tc8.0.x/trunk/java/org/apache/coyote/http11/upgrade/Nio2ServletInputStream.java?rev=1740877&r1=1740876&r2=1740877&view=diff ============================================================================== --- tomcat/tc8.0.x/trunk/java/org/apache/coyote/http11/upgrade/Nio2ServletInputStream.java (original) +++ tomcat/tc8.0.x/trunk/java/org/apache/coyote/http11/upgrade/Nio2ServletInputStream.java Mon Apr 25 19:06:07 2016 @@ -42,6 +42,7 @@ public class Nio2ServletInputStream exte private boolean flipped = false; private volatile boolean readPending = false; private volatile boolean interest = true; + private volatile boolean closed = true; public Nio2ServletInputStream(SocketWrapper<Nio2Channel> wrapper, AbstractEndpoint<Nio2Channel> endpoint0) { this.endpoint = endpoint0; @@ -53,7 +54,11 @@ public class Nio2ServletInputStream exte boolean notify = false; synchronized (completionHandler) { if (nBytes.intValue() < 0) { - failed(new EOFException(), attachment); + if (closed) { + readPending = false; + } else { + failed(new EOFException(), attachment); + } } else { readPending = false; if (interest && !Nio2Endpoint.isInline()) { @@ -180,6 +185,7 @@ public class Nio2ServletInputStream exte @Override protected void doClose() throws IOException { + closed = true; channel.close(); } --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org