From 8e542fcdc41db44895bbb7124909eea5fe2dea4d Mon Sep 17 00:00:00 2001 From: Daniel Mack Date: Thu, 30 Jul 2015 15:51:50 +0200 Subject: unit-name: fix memory leak Fix a memory leak introduced by 2fc09a9c. 's' is used twice in this function, and if free_and_strdup() fails, the pointer is left untouched. --- src/basic/unit-name.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/basic/unit-name.c b/src/basic/unit-name.c index 4b84542d0c..fa530da456 100644 --- a/src/basic/unit-name.c +++ b/src/basic/unit-name.c @@ -695,8 +695,10 @@ int slice_build_parent_slice(const char *slice, char **ret) { strcpy(dash, ".slice"); else { r = free_and_strdup(&s, "-.slice"); - if (r < 0) + if (r < 0) { + free(s); return r; + } } *ret = s; -- cgit v1.2.3-54-g00ecf