From c73c552cae435dd61ebbe0c76aa66570095375a9 Mon Sep 17 00:00:00 2001 From: Dominique Martinet Date: Sun, 1 Jul 2018 23:12:17 +0900 Subject: [PATCH] bar_cmd_modifier: fix use-after-free on error Found through static analysis. --- sway/commands/bar/modifier.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/sway/commands/bar/modifier.c b/sway/commands/bar/modifier.c index 7ba4b125d..02f845e66 100644 --- a/sway/commands/bar/modifier.c +++ b/sway/commands/bar/modifier.c @@ -22,9 +22,10 @@ struct cmd_results *bar_cmd_modifier(int argc, char **argv) { mod |= tmp_mod; continue; } else { + error = cmd_results_new(CMD_INVALID, "modifier", + "Unknown modifier '%s'", split->items[i]); free_flat_list(split); - return cmd_results_new(CMD_INVALID, "modifier", - "Unknown modifier '%s'", split->items[i]); + return error; } } free_flat_list(split);