From a6ff950e71ea665fff99740f7b3e0137d451a79e Mon Sep 17 00:00:00 2001 From: Lennart Poettering Date: Thu, 6 Jan 2011 20:38:02 +0100 Subject: execute: drop empty assignments from env blocks on execution but keep them around otherwise to make them visible --- src/test-env-replace.c | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) (limited to 'src/test-env-replace.c') diff --git a/src/test-env-replace.c b/src/test-env-replace.c index 37dd7ff590..4188c67dde 100644 --- a/src/test-env-replace.c +++ b/src/test-env-replace.c @@ -47,7 +47,7 @@ int main(int argc, char *argv[]) { NULL }; - char **i, **r, *t; + char **i, **r, *t, **a, **b; r = replace_env_argv((char**) line, (char**) env); @@ -96,5 +96,24 @@ int main(int argc, char *argv[]) { printf("%s\n", t); free(t); + a = strv_new("FOO=BAR", "WALDO=WALDO", "WALDO=", "PIEP", "SCHLUMPF=SMURF", NULL); + b = strv_new("FOO=KKK", "FOO=", "PIEP=", "SCHLUMPF=SMURFF", "NANANANA=YES", NULL); + + r = strv_env_merge(2, a, b); + strv_free(a); + strv_free(b); + + STRV_FOREACH(i, r) + printf("%s\n", *i); + + printf("CLEANED UP:\n"); + + r = strv_env_clean(r); + + STRV_FOREACH(i, r) + printf("%s\n", *i); + + strv_free(r); + return 0; } -- cgit v1.2.3-54-g00ecf