From: Olivier Houchard Date: Tue, 24 Oct 2017 17:03:30 +0000 (+0200) Subject: BUG/MINOR: checks: Don't forget to release the connection on error case. X-Git-Tag: v1.8-rc1~224 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=390485a68d8a7cc2243351fc153df19a2d2cb743;p=thirdparty%2Fhaproxy.git BUG/MINOR: checks: Don't forget to release the connection on error case. When switching the check code to a non-permanent connection, the new code forgot to free the connection if an error happened and was returned by connect_conn_chk(), leading to the check never be ran again. --- diff --git a/src/checks.c b/src/checks.c index e6cc42a1c3..880b47bc1a 100644 --- a/src/checks.c +++ b/src/checks.c @@ -2118,6 +2118,10 @@ static struct task *process_chk_conn(struct task *t) } /* here, we have seen a synchronous error, no fd was allocated */ + if (conn) { + conn_free(conn); + check->conn = conn = NULL; + } check->state &= ~CHK_ST_INPROGRESS; check_notify_failure(check);