aboutsummaryrefslogtreecommitdiff
path: root/sway
diff options
context:
space:
mode:
authorDrew DeVault <sir@cmpwn.com>2018-11-14 21:25:26 -0500
committerGitHub <noreply@github.com>2018-11-14 21:25:26 -0500
commit484bf591be330905a4d4720efa7eb8cd16e53576 (patch)
tree27a33ba71b34918c98b4c3c120a999bd9b8488aa /sway
parent47cca240e26992782622a3dc360ed3afec83b47f (diff)
parenteda1bf769f239a9e8d5a9907255a330e3113a649 (diff)
Merge pull request #3121 from c-edw/feature/MissingFrees
[WIP] Free unfreed resources.
Diffstat (limited to 'sway')
-rw-r--r--sway/config.c2
-rw-r--r--sway/config/bar.c1
-rw-r--r--sway/config/output.c1
-rw-r--r--sway/criteria.c7
-rw-r--r--sway/decoration.c1
5 files changed, 9 insertions, 3 deletions
diff --git a/sway/config.c b/sway/config.c
index c1320acf..e9b55061 100644
--- a/sway/config.c
+++ b/sway/config.c
@@ -123,6 +123,8 @@ void free_config(struct sway_config *config) {
}
list_free(config->criteria);
}
+ free_mode(config->current_mode);
+ free_bar_config(config->current_bar);
list_free(config->no_focus);
list_free(config->active_bar_modifiers);
list_free(config->config_chain);
diff --git a/sway/config/bar.c b/sway/config/bar.c
index 8b88642e..7bca5f49 100644
--- a/sway/config/bar.c
+++ b/sway/config/bar.c
@@ -46,6 +46,7 @@ void free_bar_config(struct bar_config *bar) {
free(bar->position);
free(bar->hidden_state);
free(bar->status_command);
+ free(bar->swaybar_command);
free(bar->font);
free(bar->separator_symbol);
for (int i = 0; i < bar->bindings->length; i++) {
diff --git a/sway/config/output.c b/sway/config/output.c
index 2b041353..07543e3c 100644
--- a/sway/config/output.c
+++ b/sway/config/output.c
@@ -326,6 +326,7 @@ void free_output_config(struct output_config *oc) {
free(oc->name);
free(oc->background);
free(oc->background_option);
+ free(oc->background_fallback);
free(oc);
}
diff --git a/sway/criteria.c b/sway/criteria.c
index 2f9992e9..1d404333 100644
--- a/sway/criteria.c
+++ b/sway/criteria.c
@@ -35,18 +35,19 @@ bool criteria_is_empty(struct criteria *criteria) {
}
void criteria_destroy(struct criteria *criteria) {
+ free(criteria->raw);
+ free(criteria->cmdlist);
+ free(criteria->target);
pcre_free(criteria->title);
pcre_free(criteria->shell);
pcre_free(criteria->app_id);
+ pcre_free(criteria->con_mark);
#ifdef HAVE_XWAYLAND
pcre_free(criteria->class);
pcre_free(criteria->instance);
pcre_free(criteria->window_role);
#endif
- pcre_free(criteria->con_mark);
free(criteria->workspace);
- free(criteria->cmdlist);
- free(criteria->raw);
free(criteria);
}
diff --git a/sway/decoration.c b/sway/decoration.c
index 849fa89c..a6007c2e 100644
--- a/sway/decoration.c
+++ b/sway/decoration.c
@@ -13,6 +13,7 @@ static void server_decoration_handle_destroy(struct wl_listener *listener,
wl_list_remove(&deco->destroy.link);
wl_list_remove(&deco->mode.link);
wl_list_remove(&deco->link);
+ free(deco->wlr_server_decoration);
free(deco);
}