1
0
mirror of https://github.com/systemd/systemd.git synced 2025-01-09 01:18:19 +03:00

machinectl: use strdup_to() and move cleanup out of the loop

It doesn't matter much, but it seems nicer to call va_end() just
once.
This commit is contained in:
Zbigniew Jędrzejewski-Szmek 2024-03-19 23:34:01 +01:00
parent 4ab305fa3b
commit 237bbec117

View File

@ -159,24 +159,22 @@ static int call_get_os_release(sd_bus *bus, const char *method, const char *name
if (r < 0) if (r < 0)
return bus_log_parse_error(r); return bus_log_parse_error(r);
r = 0;
va_start(ap, query); va_start(ap, query);
for (count = 0; count < awaited_args; count++) { for (count = 0; count < awaited_args; count++) {
char *val, **out; char **out;
out = va_arg(ap, char **); out = va_arg(ap, char **);
assert(out); assert(out);
if (query_res[count]) { if (query_res[count]) {
val = strdup(query_res[count]); r = strdup_to(out, query_res[count]);
if (!val) { if (r < 0)
va_end(ap); break;
return -ENOMEM;
}
*out = val;
} }
} }
va_end(ap); va_end(ap);
return 0; return r;
} }
static int call_get_addresses( static int call_get_addresses(