aboutsummaryrefslogtreecommitdiff
path: root/sway/tree
diff options
context:
space:
mode:
authoremersion <contact@emersion.fr>2019-02-16 23:30:19 +0100
committerBrian Ashworth <bosrsf04@gmail.com>2019-02-16 19:11:22 -0500
commit7baaa3a0f80a28f58a3f95f7c3c832cb109b2aab (patch)
treed2596353b9badb5e0d0709fb9ed67ad1edb9e7ec /sway/tree
parent806129d3ccef1075e178791c56159e08e868bcaf (diff)
Disconnect swaybg instead of killing it
This is much more reliable. This also fixes race conditions when killing swaybg while it's doing a wl_display_roundtrip.
Diffstat (limited to 'sway/tree')
-rw-r--r--sway/tree/output.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/sway/tree/output.c b/sway/tree/output.c
index 138144a7..60e0af9f 100644
--- a/sway/tree/output.c
+++ b/sway/tree/output.c
@@ -233,9 +233,8 @@ void output_disable(struct sway_output *output) {
root_for_each_container(untrack_output, output);
- if (output->bg_pid) {
- terminate_swaybg(output->bg_pid);
- output->bg_pid = 0;
+ if (output->swaybg_client != NULL) {
+ wl_client_destroy(output->swaybg_client);
}
int index = list_find(root->outputs, output);