diff options
Diffstat (limited to 'sway/config.c')
-rw-r--r-- | sway/config.c | 19 |
1 files changed, 7 insertions, 12 deletions
diff --git a/sway/config.c b/sway/config.c index ff7de4b9..5b03bc56 100644 --- a/sway/config.c +++ b/sway/config.c | |||
@@ -38,26 +38,24 @@ | |||
38 | struct sway_config *config = NULL; | 38 | struct sway_config *config = NULL; |
39 | 39 | ||
40 | static void free_mode(struct sway_mode *mode) { | 40 | static void free_mode(struct sway_mode *mode) { |
41 | int i; | ||
42 | |||
43 | if (!mode) { | 41 | if (!mode) { |
44 | return; | 42 | return; |
45 | } | 43 | } |
46 | free(mode->name); | 44 | free(mode->name); |
47 | if (mode->keysym_bindings) { | 45 | if (mode->keysym_bindings) { |
48 | for (i = 0; i < mode->keysym_bindings->length; i++) { | 46 | for (int i = 0; i < mode->keysym_bindings->length; i++) { |
49 | free_sway_binding(mode->keysym_bindings->items[i]); | 47 | free_sway_binding(mode->keysym_bindings->items[i]); |
50 | } | 48 | } |
51 | list_free(mode->keysym_bindings); | 49 | list_free(mode->keysym_bindings); |
52 | } | 50 | } |
53 | if (mode->keycode_bindings) { | 51 | if (mode->keycode_bindings) { |
54 | for (i = 0; i < mode->keycode_bindings->length; i++) { | 52 | for (int i = 0; i < mode->keycode_bindings->length; i++) { |
55 | free_sway_binding(mode->keycode_bindings->items[i]); | 53 | free_sway_binding(mode->keycode_bindings->items[i]); |
56 | } | 54 | } |
57 | list_free(mode->keycode_bindings); | 55 | list_free(mode->keycode_bindings); |
58 | } | 56 | } |
59 | if (mode->mouse_bindings) { | 57 | if (mode->mouse_bindings) { |
60 | for (i = 0; i < mode->mouse_bindings->length; i++) { | 58 | for (int i = 0; i < mode->mouse_bindings->length; i++) { |
61 | free_sway_binding(mode->mouse_bindings->items[i]); | 59 | free_sway_binding(mode->mouse_bindings->items[i]); |
62 | } | 60 | } |
63 | list_free(mode->mouse_bindings); | 61 | list_free(mode->mouse_bindings); |
@@ -446,7 +444,7 @@ bool load_main_config(const char *file, bool is_active, bool validating) { | |||
446 | } | 444 | } |
447 | } | 445 | } |
448 | 446 | ||
449 | free_flat_list(secconfigs); | 447 | list_free_items_and_destroy(secconfigs); |
450 | } | 448 | } |
451 | */ | 449 | */ |
452 | 450 | ||
@@ -654,8 +652,7 @@ bool read_config(FILE *file, struct sway_config *config, | |||
654 | 652 | ||
655 | if (read + length > config_size) { | 653 | if (read + length > config_size) { |
656 | wlr_log(WLR_ERROR, "Config file changed during reading"); | 654 | wlr_log(WLR_ERROR, "Config file changed during reading"); |
657 | list_foreach(stack, free); | 655 | list_free_items_and_destroy(stack); |
658 | list_free(stack); | ||
659 | free(line); | 656 | free(line); |
660 | return false; | 657 | return false; |
661 | } | 658 | } |
@@ -684,8 +681,7 @@ bool read_config(FILE *file, struct sway_config *config, | |||
684 | } | 681 | } |
685 | char *expanded = expand_line(block, line, brace_detected > 0); | 682 | char *expanded = expand_line(block, line, brace_detected > 0); |
686 | if (!expanded) { | 683 | if (!expanded) { |
687 | list_foreach(stack, free); | 684 | list_free_items_and_destroy(stack); |
688 | list_free(stack); | ||
689 | free(line); | 685 | free(line); |
690 | return false; | 686 | return false; |
691 | } | 687 | } |
@@ -750,8 +746,7 @@ bool read_config(FILE *file, struct sway_config *config, | |||
750 | free(line); | 746 | free(line); |
751 | free_cmd_results(res); | 747 | free_cmd_results(res); |
752 | } | 748 | } |
753 | list_foreach(stack, free); | 749 | list_free_items_and_destroy(stack); |
754 | list_free(stack); | ||
755 | config->current_config_line_number = 0; | 750 | config->current_config_line_number = 0; |
756 | config->current_config_line = NULL; | 751 | config->current_config_line = NULL; |
757 | 752 | ||