Use the cleanup attribute to make sure that alias is freed if cli_add_map() is cancelled. Signed-off-by: Benjamin Marzinski <bmarzins@xxxxxxxxxx> --- multipathd/cli_handlers.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/multipathd/cli_handlers.c b/multipathd/cli_handlers.c index 3dc5e690..34e0147e 100644 --- a/multipathd/cli_handlers.c +++ b/multipathd/cli_handlers.c @@ -699,7 +699,8 @@ cli_add_map (void * v, struct strbuf *reply, void * data) char * param = get_keyparam(v, KEY_MAP); int major = -1, minor = -1; char dev_path[FILE_NAME_SIZE]; - char *refwwid, *alias = NULL; + char *refwwid; + char *alias __attribute__((cleanup(cleanup_charp))) = NULL; int rc, count = 0; struct config *conf; int invalid = 0; @@ -748,7 +749,6 @@ cli_add_map (void * v, struct strbuf *reply, void * data) return 1; } rc = ev_add_map(dev_path, alias, vecs); - free(alias); return rc; } -- 2.45.0