aboutsummaryrefslogtreecommitdiffstats
path: root/sway/config.c
diff options
context:
space:
mode:
Diffstat (limited to 'sway/config.c')
-rw-r--r--sway/config.c19
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 @@
38struct sway_config *config = NULL; 38struct sway_config *config = NULL;
39 39
40static void free_mode(struct sway_mode *mode) { 40static 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