nspawn-oci: use new json_variant_strv() helper
This commit is contained in:
parent
22f14d6b02
commit
a7f8c9ce60
|
@ -172,24 +172,13 @@ static int oci_env(const char *name, JsonVariant *v, JsonDispatchFlags flags, vo
|
||||||
static int oci_args(const char *name, JsonVariant *v, JsonDispatchFlags flags, void *userdata) {
|
static int oci_args(const char *name, JsonVariant *v, JsonDispatchFlags flags, void *userdata) {
|
||||||
_cleanup_strv_free_ char **l = NULL;
|
_cleanup_strv_free_ char **l = NULL;
|
||||||
char ***value = userdata;
|
char ***value = userdata;
|
||||||
JsonVariant *e;
|
|
||||||
int r;
|
int r;
|
||||||
|
|
||||||
assert(value);
|
assert(value);
|
||||||
|
|
||||||
JSON_VARIANT_ARRAY_FOREACH(e, v) {
|
r = json_variant_strv(v, &l);
|
||||||
const char *n;
|
if (r < 0)
|
||||||
|
return json_log(v, flags, r, "Cannot parse arguments as list of strings: %m");
|
||||||
if (!json_variant_is_string(e))
|
|
||||||
return json_log(v, flags, SYNTHETIC_ERRNO(EINVAL),
|
|
||||||
"Argument is not a string.");
|
|
||||||
|
|
||||||
assert_se(n = json_variant_string(e));
|
|
||||||
|
|
||||||
r = strv_extend(&l, n);
|
|
||||||
if (r < 0)
|
|
||||||
return log_oom();
|
|
||||||
}
|
|
||||||
|
|
||||||
if (strv_isempty(l))
|
if (strv_isempty(l))
|
||||||
return json_log(v, flags, SYNTHETIC_ERRNO(EINVAL),
|
return json_log(v, flags, SYNTHETIC_ERRNO(EINVAL),
|
||||||
|
|
Loading…
Reference in a new issue