asyn-thrdd: fix cleanup when RR fails due to OOM

Fixes #17507
Closes #17514
This commit is contained in:
Daniel Stenberg 2025-06-02 08:47:03 +02:00
parent 516e9ccab3
commit f738093896
No known key found for this signature in database
GPG Key ID: 5CC908FDB71E12C2

View File

@ -595,16 +595,15 @@ CURLcode Curl_async_is_resolved(struct Curl_easy *data,
if(!result) {
struct Curl_https_rrinfo *lhrr;
lhrr = Curl_httpsrr_dup_move(&thrdd->rr.hinfo);
if(!lhrr) {
async_thrdd_destroy(data);
return CURLE_OUT_OF_MEMORY;
}
data->state.async.dns->hinfo = lhrr;
if(!lhrr)
result = CURLE_OUT_OF_MEMORY;
else
data->state.async.dns->hinfo = lhrr;
}
}
#endif
if(!result && data->state.async.dns)
result = Curl_dnscache_add(data, data->state.async.dns);
if(!result && data->state.async.dns)
result = Curl_dnscache_add(data, data->state.async.dns);
}
if(!result && !data->state.async.dns)