aboutsummaryrefslogtreecommitdiffstats
path: root/sway/config/bar.c
diff options
context:
space:
mode:
authorLibravatar Brian Ashworth <bosrsf04@gmail.com>2018-10-08 11:40:13 -0400
committerLibravatar Brian Ashworth <bosrsf04@gmail.com>2018-10-09 08:12:46 -0400
commit1c969e86f50065985ddf35b7fef62c14aa7688a5 (patch)
tree1d44b026ffb8cd67595b695ac92275ba320ee4d9 /sway/config/bar.c
parentMerge pull request #2804 from Emantor/swaynag-double-free (diff)
downloadsway-1c969e86f50065985ddf35b7fef62c14aa7688a5.tar.gz
sway-1c969e86f50065985ddf35b7fef62c14aa7688a5.tar.zst
sway-1c969e86f50065985ddf35b7fef62c14aa7688a5.zip
Implement bar bindsym
Diffstat (limited to 'sway/config/bar.c')
-rw-r--r--sway/config/bar.c16
1 files changed, 15 insertions, 1 deletions
diff --git a/sway/config/bar.c b/sway/config/bar.c
index b8695798..f84407c9 100644
--- a/sway/config/bar.c
+++ b/sway/config/bar.c
@@ -28,6 +28,16 @@ static void terminate_swaybar(pid_t pid) {
28 } 28 }
29} 29}
30 30
31void free_bar_binding(struct bar_binding *binding) {
32 if (!binding) {
33 return;
34 }
35 if (binding->command) {
36 free(binding->command);
37 }
38 free(binding);
39}
40
31void free_bar_config(struct bar_config *bar) { 41void free_bar_config(struct bar_config *bar) {
32 if (!bar) { 42 if (!bar) {
33 return; 43 return;
@@ -39,7 +49,11 @@ void free_bar_config(struct bar_config *bar) {
39 free(bar->status_command); 49 free(bar->status_command);
40 free(bar->font); 50 free(bar->font);
41 free(bar->separator_symbol); 51 free(bar->separator_symbol);
42 // TODO: Free mouse bindings 52 while (bar->bindings->length) {
53 struct bar_binding *binding = bar->bindings->items[0];
54 list_del(bar->bindings, 0);
55 free_bar_binding(binding);
56 }
43 list_free(bar->bindings); 57 list_free(bar->bindings);
44 if (bar->outputs) { 58 if (bar->outputs) {
45 free_flat_list(bar->outputs); 59 free_flat_list(bar->outputs);