aboutsummaryrefslogtreecommitdiffstats
path: root/sway/commands/bar
diff options
context:
space:
mode:
authorLibravatar Dominique Martinet <asmadeus@codewreck.org>2018-07-01 23:12:17 +0900
committerLibravatar Dominique Martinet <asmadeus@codewreck.org>2018-07-02 08:03:41 +0900
commitc73c552cae435dd61ebbe0c76aa66570095375a9 (patch)
treed68569ddd573cd6fe8d4fcefae4fc3447322b1e6 /sway/commands/bar
parentbar_cmd_font: fix leak of font (diff)
downloadsway-c73c552cae435dd61ebbe0c76aa66570095375a9.tar.gz
sway-c73c552cae435dd61ebbe0c76aa66570095375a9.tar.zst
sway-c73c552cae435dd61ebbe0c76aa66570095375a9.zip
bar_cmd_modifier: fix use-after-free on error
Found through static analysis.
Diffstat (limited to 'sway/commands/bar')
-rw-r--r--sway/commands/bar/modifier.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/sway/commands/bar/modifier.c b/sway/commands/bar/modifier.c
index 7ba4b125..02f845e6 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) {
22 mod |= tmp_mod; 22 mod |= tmp_mod;
23 continue; 23 continue;
24 } else { 24 } else {
25 error = cmd_results_new(CMD_INVALID, "modifier",
26 "Unknown modifier '%s'", split->items[i]);
25 free_flat_list(split); 27 free_flat_list(split);
26 return cmd_results_new(CMD_INVALID, "modifier", 28 return error;
27 "Unknown modifier '%s'", split->items[i]);
28 } 29 }
29 } 30 }
30 free_flat_list(split); 31 free_flat_list(split);