From 3099d179be9ffb38753e412480e23e5391913751 Mon Sep 17 00:00:00 2001 From: default Date: Thu, 6 Feb 2025 20:10:52 +0100 Subject: Fixed a crash in xs_multipart_form_data(). --- xs_url.h | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/xs_url.h b/xs_url.h index bb31779..37d2391 100644 --- a/xs_url.h +++ b/xs_url.h @@ -274,7 +274,8 @@ xs_dict *xs_multipart_form_data(const char *payload, int p_size, const char *hea l1 = xs_list_append(l1, vpo); l1 = xs_list_append(l1, vps); - p_vars = xs_dict_append(p_vars, vn, l1); + if (xs_is_string(vn)) + p_vars = xs_dict_append(p_vars, vn, l1); } else { /* regular variable; just copy */ @@ -282,7 +283,8 @@ xs_dict *xs_multipart_form_data(const char *payload, int p_size, const char *hea memcpy(vc, payload + po, ps); vc[ps] = '\0'; - p_vars = xs_dict_append(p_vars, vn, vc); + if (xs_is_string(vn) && xs_is_string(vc)) + p_vars = xs_dict_append(p_vars, vn, vc); } /* move on */ -- cgit v1.2.3