diff options
author | Daniel Stenberg <daniel@haxx.se> | 2021-12-06 11:19:52 +0100 |
---|---|---|
committer | Daniel Stenberg <daniel@haxx.se> | 2021-12-06 14:32:29 +0100 |
commit | b3f9c1aa09cbcdf6350d627f79f7d0e86cb178d3 (patch) | |
tree | 2be0f1b2260eccc89fc0b7f1b3754f98cde4fb03 | |
parent | bc064a8177f14fd69a6bcd7735b19ab84f3ba81d (diff) | |
download | curl-b3f9c1aa09cbcdf6350d627f79f7d0e86cb178d3.tar.gz |
http2:set_transfer_url() return early on OOM
If curl_url() returns NULL this should return early to avoid mistakes -
even if right now the subsequent function invokes are all OK.
Coverity (wrongly) pointed out this as a NULL deref.
Closes #8100
-rw-r--r-- | lib/http2.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/lib/http2.c b/lib/http2.c index 992fbbb26..e74400a4c 100644 --- a/lib/http2.c +++ b/lib/http2.c @@ -505,10 +505,13 @@ static int set_transfer_url(struct Curl_easy *data, struct curl_pushheaders *hp) { const char *v; - CURLU *u = curl_url(); CURLUcode uc; char *url = NULL; int rc = 0; + CURLU *u = curl_url(); + + if(!u) + return 5; v = curl_pushheader_byname(hp, ":scheme"); if(v) { |