From 06f1db57cac8ade2602fba61909c8d54b57fa10b Mon Sep 17 00:00:00 2001 From: Daniel Stenberg Date: Mon, 11 Jan 2021 09:37:44 +0100 Subject: [PATCH] multi_runsingle: bail out early on data->conn == NULL As that's a significant error condition and scan-build warns for NULL pointer dereferences if we don't. Closes #6433 --- lib/multi.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/lib/multi.c b/lib/multi.c index a40db6bd8f..9dec278f3d 100644 --- a/lib/multi.c +++ b/lib/multi.c @@ -1589,9 +1589,12 @@ static CURLMcode multi_runsingle(struct Curl_multi *multi, process_pending_handles(multi); /* multiplexed */ } - if(data->conn && data->mstate > CURLM_STATE_CONNECT && + if(data->mstate > CURLM_STATE_CONNECT && data->mstate < CURLM_STATE_COMPLETED) { /* Make sure we set the connection's current owner */ + DEBUGASSERT(data->conn); + if(!data->conn) + return CURLM_INTERNAL_ERROR; data->conn->data = data; } -- 2.47.2