diff options
-rw-r--r-- | src/login/loginctl.c | 13 |
1 files changed, 4 insertions, 9 deletions
diff --git a/src/login/loginctl.c b/src/login/loginctl.c index f96a568610..e03b0b93e1 100644 --- a/src/login/loginctl.c +++ b/src/login/loginctl.c @@ -1089,7 +1089,7 @@ static int parse_argv(int argc, char *argv[]) { {} }; - int c; + int c, r; assert(argc >= 0); assert(argv); @@ -1107,14 +1107,9 @@ static int parse_argv(int argc, char *argv[]) { return 0; case 'p': { - char **l; - - l = strv_append(arg_property, optarg); - if (!l) - return -ENOMEM; - - strv_free(arg_property); - arg_property = l; + r = strv_extend(&arg_property, optarg); + if (r < 0) + return log_oom(); /* If the user asked for a particular * property, show it to him, even if it is |