From d8667165652cc69425b6f558460e3053881f46fa Mon Sep 17 00:00:00 2001 From: Daniel Stenberg Date: Mon, 10 Jun 2002 12:34:04 +0000 Subject: Gautam Mani found a socket descriptor leak that happened when FTP transfers failed and you reinvoked curl_easy_perform(). --- lib/transfer.c | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'lib') diff --git a/lib/transfer.c b/lib/transfer.c index dac5dee96..6e0b9e6c7 100644 --- a/lib/transfer.c +++ b/lib/transfer.c @@ -1414,6 +1414,13 @@ CURLcode Curl_perform(struct SessionHandle *data) if(!res && res2) res = res2; + if(conn && (-1 !=conn->secondarysocket)) { + /* if we failed anywhere, we must clean up the secondary socket if it + was used */ + sclose(conn->secondarysocket); + conn->secondarysocket=-1; + } + return res; } -- cgit v1.2.3