diff options
author | Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> | 2021-08-10 17:25:47 +0200 |
---|---|---|
committer | Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> | 2021-08-11 09:34:45 +0200 |
commit | 0337b3d51c848edb3c0532f58416be3a87ae70b7 (patch) | |
tree | c265ed39a0706250a37755864a683317ab7c0a12 /src/run | |
parent | 4bbafcc359bf12f19f1ec232a2412195183d4ad5 (diff) | |
download | systemd-0337b3d51c848edb3c0532f58416be3a87ae70b7.tar.gz |
run: allow --setenv=FOO
Diffstat (limited to 'src/run')
-rw-r--r-- | src/run/run.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/run/run.c b/src/run/run.c index 993f1bc4f4..fb38571228 100644 --- a/src/run/run.c +++ b/src/run/run.c @@ -111,7 +111,7 @@ static int help(void) { " --nice=NICE Nice level\n" " --working-directory=PATH Set working directory\n" " -d --same-dir Inherit working directory from caller\n" - " -E --setenv=NAME=VALUE Set environment\n" + " -E --setenv=NAME[=VALUE] Set environment variable\n" " -t --pty Run service on pseudo TTY as STDIN/STDOUT/\n" " STDERR\n" " -P --pipe Pass STDIN/STDOUT/STDERR directly to service\n" @@ -322,8 +322,9 @@ static int parse_argv(int argc, char *argv[]) { break; case 'E': - if (strv_extend(&arg_environment, optarg) < 0) - return log_oom(); + r = strv_env_replace_strdup_passthrough(&arg_environment, optarg); + if (r < 0) + return log_error_errno(r, "Cannot assign environment variable %s: %m", optarg); break; |