commit 4b37678
Toby Jaffey
·
2022-12-10 13:15:29 +0000 UTC
parent 2fd7e20
Ensure that pd variable stays in scope while curl request runs Fix for #19
1 files changed,
+4,
-1
+4,
-1
1@@ -93,6 +93,7 @@ d_char *xs_http_request(char *method, char *url, d_char *headers,
2 struct curl_slist *list = NULL;
3 char *k, *v, *p;
4 long lstatus;
5+ struct _payload_data pd;
6
7 response = xs_dict_new();
8
9@@ -128,7 +129,9 @@ d_char *xs_http_request(char *method, char *url, d_char *headers,
10 sprintf(tmp, "content-length: %d", b_size);
11 list = curl_slist_append(list, tmp);
12
13- struct _payload_data pd = { body, b_size, 0 };
14+ pd.data = body;
15+ pd.size = b_size;
16+ pd.offset = 0;
17
18 curl_easy_setopt(curl, CURLOPT_READDATA, &pd);
19 curl_easy_setopt(curl, CURLOPT_READFUNCTION, _post_callback);