summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaan De Meyer <daan.j.demeyer@gmail.com>2021-12-09 15:46:13 +0100
committerZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>2021-12-09 18:13:04 +0100
commit1f013e0c4962925fbd33a970ea26fd28532c37d0 (patch)
treed00a716f2021acbfa91559e50fa49950e3c4cca7
parente63fa0756c14c0277cf03d7beeea776b0b81a057 (diff)
downloadsystemd-1f013e0c4962925fbd33a970ea26fd28532c37d0.tar.gz
process-util: Fix memory leak
-rw-r--r--src/basic/process-util.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/basic/process-util.c b/src/basic/process-util.c
index 1b96d3ca85..c971852158 100644
--- a/src/basic/process-util.c
+++ b/src/basic/process-util.c
@@ -221,9 +221,12 @@ int get_process_cmdline(pid_t pid, size_t max_columns, ProcessCmdlineFlags flags
return -ENOMEM;
/* Drop trailing empty strings. See issue #21186. */
- STRV_FOREACH_BACKWARDS(p, args)
- if (isempty(*p))
- *p = mfree(*p);
+ STRV_FOREACH_BACKWARDS(p, args) {
+ if (!isempty(*p))
+ break;
+
+ *p = mfree(*p);
+ }
ans = quote_command_line(args, shflags);
if (!ans)