sway

i3-compatible Wayland compositor
git clone https://git.awy.one/sway
Log | Files | Refs | README | LICENSE

commit 605e515a9324c3e314939d21f1ea13b29881e100
parent 995b6edab6fab33668a9bd320631b6ab65dc10c6
Author: Rouven Czerwinski <rouven@czerwinskis.de>
Date:   Sun, 10 Feb 2019 17:04:12 +0100

fix double free for mode toggle if bar was invisible

If the bar was set to "invisible" and subsequently "toggle" was send twice, the
new mode was never set and the bar->mode was double freed.
Fix this by not requiring the bar->mode to be "hide" and instead show it
unconditionally, because it was either hidden or invisible.

Fixes #3637

Diffstat:
Msway/commands/bar/mode.c | 2+-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sway/commands/bar/mode.c b/sway/commands/bar/mode.c @@ -11,7 +11,7 @@ static struct cmd_results *bar_set_mode(struct bar_config *bar, const char *mode if (strcasecmp("toggle", mode) == 0 && !config->reading) { if (strcasecmp("dock", bar->mode) == 0) { bar->mode = strdup("hide"); - } else if (strcasecmp("hide", bar->mode) == 0) { + } else{ bar->mode = strdup("dock"); } } else if (strcasecmp("dock", mode) == 0) {