commit cd7df76cea121d3983a2fec7e340ab79f37d9c9e
parent 536e8b61b6e26c39ece6f3a21c1dcc0f169f84da
Author: Florian Dold <florian@dold.me>
Date: Thu, 2 Feb 2023 17:27:56 +0100
fix another memory leak and potential NULL dereference
Diffstat:
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/quickjs/quickjs-libc.c b/quickjs/quickjs-libc.c
@@ -2204,6 +2204,7 @@ static int gather_headers(JSContext *ctx, JSValueConst js_headers, struct curl_s
}
*headers = curl_slist_append (*headers, cstr);
JS_FreeCString(ctx, cstr);
+ JS_FreeValue(ctx, item);
}
return 0;
exception:
@@ -2231,7 +2232,9 @@ static void free_fetch_request_context(CurlRequestContext *req_context)
JS_FreeValue(ctx, req_context->resolve_func);
JS_FreeValue(ctx, req_context->reject_func);
curl_slist_free_all(req_context->headers);
- list_del(&req_context->link);
+ if (NULL != req_context->link.prev) {
+ list_del(&req_context->link);
+ }
js_free(ctx, req_context);
}