closesocket: call multi socket cb on close even with custom close

In function Curl_closesocket() in connect.c the call to
Curl_multi_closed() was wrongly omitted if a socket close function
(CURLOPT_CLOSESOCKETFUNCTION) is registered.

That would lead to not removing the socket from the internal hash table
and not calling the multi socket callback appropriately.

Bug: http://curl.haxx.se/bug/view.cgi?id=1493
This commit is contained in:
Frank Meier 2015-03-15 13:24:26 +01:00 committed by Daniel Stenberg
parent 851c29269b
commit 9063a7f853
1 changed files with 3 additions and 1 deletions

View File

@ -1263,8 +1263,10 @@ int Curl_closesocket(struct connectdata *conn,
accept, then we MUST NOT call the callback but clear the accepted
status */
conn->sock_accepted[SECONDARYSOCKET] = FALSE;
else
else {
Curl_multi_closed(conn, sock);
return conn->fclosesocket(conn->closesocket_client, sock);
}
}
if(conn)