aboutsummaryrefslogtreecommitdiff
path: root/sway/config.c
diff options
context:
space:
mode:
authorDrew DeVault <sir@cmpwn.com>2018-07-17 08:46:53 -0700
committerGitHub <noreply@github.com>2018-07-17 08:46:53 -0700
commitbec982bba62db39f734d21ffbd2a3c8cefb3f6bd (patch)
treeaff37d623566b7fa85fcdaf78f8ae046fec8cde5 /sway/config.c
parentf516dbfb6d3380de24751de9a3f3156ece869e02 (diff)
parent3931cb85b220294764db959513ecadb893e2c47b (diff)
downloadsway-bec982bba62db39f734d21ffbd2a3c8cefb3f6bd.tar.xz
Merge pull request #2289 from frsfnrrg/memory-fixes
Fix memory leaks and reference to uninitialized
Diffstat (limited to 'sway/config.c')
-rw-r--r--sway/config.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/sway/config.c b/sway/config.c
index 2c051146..c620e4c7 100644
--- a/sway/config.c
+++ b/sway/config.c
@@ -24,6 +24,7 @@
#include "sway/input/seat.h"
#include "sway/commands.h"
#include "sway/config.h"
+#include "sway/criteria.h"
#include "sway/tree/arrange.h"
#include "sway/tree/layout.h"
#include "sway/tree/workspace.h"
@@ -105,7 +106,12 @@ void free_config(struct sway_config *config) {
}
list_free(config->seat_configs);
}
- list_free(config->criteria);
+ if (config->criteria) {
+ for (int i = 0; i < config->criteria->length; ++i) {
+ criteria_destroy(config->criteria->items[i]);
+ }
+ list_free(config->criteria);
+ }
list_free(config->no_focus);
list_free(config->active_bar_modifiers);
list_free(config->config_chain);