You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hc.apache.org by ol...@apache.org on 2018/12/08 09:31:43 UTC
httpcomponents-core git commit: Bug fix: keep SSL i/o session in
'CLOSING' state as long as there is buffered application data;
that fixes intermittently failing pipelining test case
Repository: httpcomponents-core
Updated Branches:
refs/heads/4.4.x e9a57dbed -> 5e73e05e6
Bug fix: keep SSL i/o session in 'CLOSING' state as long as there is buffered application data; that fixes intermittently failing pipelining test case
Project: http://git-wip-us.apache.org/repos/asf/httpcomponents-core/repo
Commit: http://git-wip-us.apache.org/repos/asf/httpcomponents-core/commit/5e73e05e
Tree: http://git-wip-us.apache.org/repos/asf/httpcomponents-core/tree/5e73e05e
Diff: http://git-wip-us.apache.org/repos/asf/httpcomponents-core/diff/5e73e05e
Branch: refs/heads/4.4.x
Commit: 5e73e05e6d9b91f6718b02a8d6178f24e98e07cc
Parents: e9a57db
Author: Oleg Kalnichevski <ol...@apache.org>
Authored: Sat Dec 8 10:30:50 2018 +0100
Committer: Oleg Kalnichevski <ol...@apache.org>
Committed: Sat Dec 8 10:30:50 2018 +0100
----------------------------------------------------------------------
.../main/java/org/apache/http/nio/reactor/ssl/SSLIOSession.java | 4 +++-
.../http/nio/integration/TestHttpAsyncHandlersPipelining.java | 2 +-
2 files changed, 4 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/httpcomponents-core/blob/5e73e05e/httpcore-nio/src/main/java/org/apache/http/nio/reactor/ssl/SSLIOSession.java
----------------------------------------------------------------------
diff --git a/httpcore-nio/src/main/java/org/apache/http/nio/reactor/ssl/SSLIOSession.java b/httpcore-nio/src/main/java/org/apache/http/nio/reactor/ssl/SSLIOSession.java
index 9575d99..c3d1cf9 100644
--- a/httpcore-nio/src/main/java/org/apache/http/nio/reactor/ssl/SSLIOSession.java
+++ b/httpcore-nio/src/main/java/org/apache/http/nio/reactor/ssl/SSLIOSession.java
@@ -366,7 +366,9 @@ public class SSLIOSession implements IOSession, SessionBufferStatus, SocketAcces
this.sslEngine.closeOutbound();
}
if (this.status == CLOSING && this.sslEngine.isOutboundDone()
- && (this.endOfStream || this.sslEngine.isInboundDone())) {
+ && (this.endOfStream || this.sslEngine.isInboundDone())
+ && !this.inPlain.hasData()
+ && this.appBufferStatus != null && !this.appBufferStatus.hasBufferedInput()) {
this.status = CLOSED;
}
// Abnormal session termination
http://git-wip-us.apache.org/repos/asf/httpcomponents-core/blob/5e73e05e/httpcore-nio/src/test/java/org/apache/http/nio/integration/TestHttpAsyncHandlersPipelining.java
----------------------------------------------------------------------
diff --git a/httpcore-nio/src/test/java/org/apache/http/nio/integration/TestHttpAsyncHandlersPipelining.java b/httpcore-nio/src/test/java/org/apache/http/nio/integration/TestHttpAsyncHandlersPipelining.java
index 53d3689..f7494b0 100644
--- a/httpcore-nio/src/test/java/org/apache/http/nio/integration/TestHttpAsyncHandlersPipelining.java
+++ b/httpcore-nio/src/test/java/org/apache/http/nio/integration/TestHttpAsyncHandlersPipelining.java
@@ -405,7 +405,7 @@ public class TestHttpAsyncHandlersPipelining extends HttpCoreNIOTestBase {
Assert.assertTrue(c1.isDone());
Assert.assertNotNull(c1.getResult());
Assert.assertTrue(c2.isDone());
-// Assert.assertNotNull(c2.getResult());
+ Assert.assertNotNull(c2.getResult());
Assert.assertTrue(c3.isDone());
Assert.assertNull(c3.getResult());
}