From: Yu Watanabe Date: Thu, 20 May 2021 05:15:34 +0000 (+0900) Subject: env-util: use strextend() X-Git-Tag: v249-rc1~182^2~8 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=2b070200f1e9b89a00e1da6abfaf15aed130a3ab;p=thirdparty%2Fsystemd.git env-util: use strextend() --- diff --git a/src/basic/env-util.c b/src/basic/env-util.c index 0e8c2878d61..81b1e3f10e5 100644 --- a/src/basic/env-util.c +++ b/src/basic/env-util.c @@ -572,12 +572,9 @@ char *replace_env_n(const char *format, size_t n, char **env, unsigned flags) { t = strv_env_get_n(env, word+2, e-word-2, flags); - k = strjoin(r, t); - if (!k) + if (!strextend(&r, t)) return NULL; - free_and_replace(r, k); - word = e+1; state = WORD; } else if (*e == ':') { @@ -627,12 +624,9 @@ char *replace_env_n(const char *format, size_t n, char **env, unsigned flags) { else if (!t && state == DEFAULT_VALUE) t = v = replace_env_n(test_value, e-test_value, env, flags); - k = strjoin(r, t); - if (!k) + if (!strextend(&r, t)) return NULL; - free_and_replace(r, k); - word = e+1; state = WORD; } @@ -646,12 +640,9 @@ char *replace_env_n(const char *format, size_t n, char **env, unsigned flags) { t = strv_env_get_n(env, word+1, e-word-1, flags); - k = strjoin(r, t); - if (!k) + if (!strextend(&r, t)) return NULL; - free_and_replace(r, k); - word = e--; i--; state = WORD;