aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--xs_url.h6
1 files 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 */