diff options
| author | 2023-03-24 10:16:49 -0400 | |
|---|---|---|
| committer | 2023-03-24 10:16:49 -0400 | |
| commit | 5f9c7defa015b1a114be40de40499a1a267a7c79 (patch) | |
| tree | 3bf93c2ad6b7cd5a5fb4cc132c2874d33b099fce | |
| parent | native: ok this is kind of big, see rest of message (diff) | |
native: use getslist universally
| -rw-r--r-- | src/mime.c | 2 | ||||
| -rw-r--r-- | src/setopt.c | 14 |
2 files changed, 3 insertions, 13 deletions
@@ -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 |
