mirror of
https://codeberg.org/grunfink/snac2.git
synced 2024-11-25 14:35:04 +00:00
Backport from xs.
This commit is contained in:
parent
18976dc6b8
commit
912cfb5aaa
3 changed files with 10 additions and 7 deletions
10
xs_curl.h
10
xs_curl.h
|
@ -96,7 +96,7 @@ xs_dict *xs_http_request(const char *method, const char *url,
|
||||||
xs_dict *p;
|
xs_dict *p;
|
||||||
xs_str *k;
|
xs_str *k;
|
||||||
xs_val *v;
|
xs_val *v;
|
||||||
long lstatus;
|
long lstatus = 0;
|
||||||
struct _payload_data pd;
|
struct _payload_data pd;
|
||||||
|
|
||||||
response = xs_dict_new();
|
response = xs_dict_new();
|
||||||
|
@ -160,7 +160,7 @@ xs_dict *xs_http_request(const char *method, const char *url,
|
||||||
curl_easy_setopt(curl, CURLOPT_HTTPHEADER, list);
|
curl_easy_setopt(curl, CURLOPT_HTTPHEADER, list);
|
||||||
|
|
||||||
/* do it */
|
/* do it */
|
||||||
curl_easy_perform(curl);
|
CURLcode cc = curl_easy_perform(curl);
|
||||||
|
|
||||||
curl_easy_getinfo(curl, CURLINFO_RESPONSE_CODE, &lstatus);
|
curl_easy_getinfo(curl, CURLINFO_RESPONSE_CODE, &lstatus);
|
||||||
|
|
||||||
|
@ -168,8 +168,12 @@ xs_dict *xs_http_request(const char *method, const char *url,
|
||||||
|
|
||||||
curl_slist_free_all(list);
|
curl_slist_free_all(list);
|
||||||
|
|
||||||
if (status != NULL)
|
if (status != NULL) {
|
||||||
|
if (lstatus == 0)
|
||||||
|
lstatus = -cc;
|
||||||
|
|
||||||
*status = (int) lstatus;
|
*status = (int) lstatus;
|
||||||
|
}
|
||||||
|
|
||||||
if (p_size != NULL)
|
if (p_size != NULL)
|
||||||
*p_size = ipd.size;
|
*p_size = ipd.size;
|
||||||
|
|
|
@ -189,8 +189,7 @@ typedef enum {
|
||||||
JS_COLON,
|
JS_COLON,
|
||||||
JS_VALUE,
|
JS_VALUE,
|
||||||
JS_STRING,
|
JS_STRING,
|
||||||
JS_INTEGER,
|
JS_NUMBER,
|
||||||
JS_REAL,
|
|
||||||
JS_TRUE,
|
JS_TRUE,
|
||||||
JS_FALSE,
|
JS_FALSE,
|
||||||
JS_NULL,
|
JS_NULL,
|
||||||
|
@ -287,7 +286,7 @@ static xs_val *_xs_json_load_lexer(FILE *f, js_type *t)
|
||||||
|
|
||||||
ungetc(c, f);
|
ungetc(c, f);
|
||||||
if (fscanf(f, "%lf", &d) == 1) {
|
if (fscanf(f, "%lf", &d) == 1) {
|
||||||
*t = JS_REAL;
|
*t = JS_NUMBER;
|
||||||
v = xs_number_new(d);
|
v = xs_number_new(d);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1 +1 @@
|
||||||
/* 4d883b5331e9275f2439b0983a0f978d1cd21e11 */
|
/* ac9fa6f1941aa3e701bbb1da50b4d5a07090eddb */
|
||||||
|
|
Loading…
Reference in a new issue