From 48220f7e3d4431879602f8d3bf231bf6f635ca79 Mon Sep 17 00:00:00 2001 From: Daniel Stenberg Date: Mon, 11 Jan 2021 10:01:49 +0100 Subject: [PATCH] multi: skip DONE state if there's no connection left for ftp wildcard ... to avoid running in that state with data->conn being NULL. --- lib/multi.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/lib/multi.c b/lib/multi.c index d3863c1e95..a40db6bd8f 100644 --- a/lib/multi.c +++ b/lib/multi.c @@ -1916,7 +1916,10 @@ static CURLMcode multi_runsingle(struct Curl_multi *multi, if(wc->state == CURLWC_DONE || wc->state == CURLWC_SKIP) { /* skip some states if it is important */ multi_done(data, CURLE_OK, FALSE); - multistate(data, CURLM_STATE_DONE); + + /* if there's no connection left, skip the DONE state */ + multistate(data, data->conn ? + CURLM_STATE_DONE : CURLM_STATE_COMPLETED); rc = CURLM_CALL_MULTI_PERFORM; break; }