} while (0)
DEFINE_TRIVIAL_CLEANUP_FUNC_FULL(CURL*, curl_easy_cleanup, NULL);
+DEFINE_TRIVIAL_CLEANUP_FUNC_FULL(struct curl_slist*, curl_slist_free_all, NULL);
static size_t output_callback(char *buf,
size_t size,
assert(input_callback);
if (!u->header) {
- struct curl_slist *h, *l;
+ _cleanup_(curl_slist_free_allp) struct curl_slist *h = NULL;
+ struct curl_slist *l;
h = curl_slist_append(NULL, "Content-Type: application/vnd.fdo.journal");
if (!h)
return log_oom();
l = curl_slist_append(h, "Transfer-Encoding: chunked");
- if (!l) {
- curl_slist_free_all(h);
+ if (!l)
return log_oom();
- }
h = l;
l = curl_slist_append(h, "Accept: text/plain");
- if (!l) {
- curl_slist_free_all(h);
+ if (!l)
return log_oom();
- }
h = l;
- u->header = h;
+ u->header = TAKE_PTR(h);
}
if (!u->easy) {