--- a/src/java.net.http/share/classes/jdk/internal/net/http/Http1Response.java Wed May 02 10:47:16 2018 +0200
+++ b/src/java.net.http/share/classes/jdk/internal/net/http/Http1Response.java Wed May 02 02:36:17 2018 -0700
@@ -375,12 +375,17 @@
(t) -> {
try {
if (t != null) {
- subscriber.onError(t);
- connection.close();
- cf.completeExceptionally(t);
+ try {
+ subscriber.onError(t);
+ } finally {
+ cf.completeExceptionally(t);
+ }
}
} finally {
bodyReader.onComplete(t);
+ if (t != null) {
+ connection.close();
+ }
}
}));
CompletableFuture<State> bodyReaderCF = bodyReader.completion();