From 9e27b6e1075d53a097de3ea5e9e8b00fb748479b Mon Sep 17 00:00:00 2001 From: ruslandoga <67764432+ruslandoga@users.noreply.github.com> Date: Sat, 27 Jan 2024 16:57:48 +0900 Subject: [PATCH] close socket on failed handshake --- lib/ch/connection.ex | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/lib/ch/connection.ex b/lib/ch/connection.ex index a40f2c8..bdadd14 100644 --- a/lib/ch/connection.ex +++ b/lib/ch/connection.ex @@ -34,14 +34,17 @@ defmodule Ch.Connection do {:ok, conn} result -> - {:error, - Error.exception("unexpected result for '#{handshake}': " <> inspect(result))} + {:ok, _conn} = HTTP.close(conn) + reason = Error.exception("unexpected result for '#{handshake}': #{inspect(result)}") + {:error, reason} end - {:error, reason, _conn} -> + {:error, reason, conn} -> + {:ok, _conn} = HTTP.close(conn) {:error, reason} - {:disconnect, reason, _conn} -> + {:disconnect, reason, conn} -> + {:ok, _conn} = HTTP.close(conn) {:error, reason} end end