Backport from xs.

This commit is contained in:
default 2023-08-09 15:54:36 +02:00
parent 18976dc6b8
commit 912cfb5aaa
3 changed files with 10 additions and 7 deletions

View file

@ -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;

View file

@ -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);
} }
} }

View file

@ -1 +1 @@
/* 4d883b5331e9275f2439b0983a0f978d1cd21e11 */ /* ac9fa6f1941aa3e701bbb1da50b4d5a07090eddb */