aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChloe Kudryavtsev <code@toast.bunkerlabs.net>2023-03-24 10:16:49 -0400
committerChloe Kudryavtsev <code@toast.bunkerlabs.net>2023-03-24 10:16:49 -0400
commit5f9c7defa015b1a114be40de40499a1a267a7c79 (patch)
tree3bf93c2ad6b7cd5a5fb4cc132c2874d33b099fce
parentnative: ok this is kind of big, see rest of message (diff)
native: use getslist universally
-rw-r--r--src/mime.c2
-rw-r--r--src/setopt.c14
2 files changed, 3 insertions, 13 deletions
diff --git a/src/mime.c b/src/mime.c
index c29eb1f..fe56a0a 100644
--- a/src/mime.c
+++ b/src/mime.c
@@ -193,7 +193,7 @@ JANET_CFUN(jurl_mime_headers) {
curl_mimepart *part = (curl_mimepart*)janet_getpointer(argv, 1);
struct jurl_cleanup *clean = register_cleanup(&mime->cleanup, JURL_CLEANUP_TYPE_SLIST);
if (!janet_getslist(&clean->slist, argv, 2)) {
- janet_panicf("failed to get slist in jurl_mime_headers, got %v", argv[2]);
+ janet_panic("failed to append to slist in jurl_mime_headers");
}
return jurl_geterror(
curl_mime_headers(part, clean->slist, 0)
diff --git a/src/setopt.c b/src/setopt.c
index cabb9a6..d338335 100644
--- a/src/setopt.c
+++ b/src/setopt.c
@@ -418,18 +418,8 @@ JANET_CFUN(jurl_setopt) {
case JURL_PARAMTYPE_SLIST: {
// we register the cleanup ahead of time, because...
struct jurl_cleanup *clean = register_cleanup(&jurl->cleanup, JURL_CLEANUP_TYPE_SLIST);
-
- JanetView args = janet_getindexed(argv, 2);
- for (int32_t i = 0; i < args.len; i++) {
- const char *s = janet_getcstring(args.items, i);
- // we use the cleanup pointer directly, this way...
- struct curl_slist *newlist = curl_slist_append(clean->slist, s);
- if (!newlist) {
- // if we ever panic in the *middle* of handling,
- // the slist will get cleaned up during garbage collection anyway
- janet_panic("failed to append to slist in jurl_setopt");
- }
- clean->slist = newlist;
+ if (!janet_getslist(&clean->slist, argv, 2)) {
+ janet_panic("failed to append to slist in jurl_setopt");
}
return jurl_geterror(
curl_easy_setopt(jurl->handle, opt->opt, clean->slist