diff --git a/java/src/main/java/org/wildfly/openssl/OpenSSLSocket.java b/java/src/main/java/org/wildfly/openssl/OpenSSLSocket.java index a5c6ecac..c8b927bb 100644 --- a/java/src/main/java/org/wildfly/openssl/OpenSSLSocket.java +++ b/java/src/main/java/org/wildfly/openssl/OpenSSLSocket.java @@ -349,7 +349,11 @@ private void runHandshake() throws IOException { } } - } finally { + } catch (IOException | RuntimeException e) { + this.close(); + throw e; + } + finally { if(freeIndirect) { indirectPooled.close(); }