diff --git a/sway/desktop/output.c b/sway/desktop/output.c index e6ed9be0d0..c928131c22 100644 --- a/sway/desktop/output.c +++ b/sway/desktop/output.c @@ -744,6 +744,10 @@ static void damage_handle_destroy(struct wl_listener *listener, void *data) { return; } output_disable(output); + + wl_list_remove(&output->damage_destroy.link); + wl_list_remove(&output->damage_frame.link); + transaction_commit_dirty(); } @@ -787,8 +791,6 @@ static void handle_destroy(struct wl_listener *listener, void *data) { wl_list_remove(&output->transform.link); wl_list_remove(&output->scale.link); wl_list_remove(&output->present.link); - wl_list_remove(&output->damage_destroy.link); - wl_list_remove(&output->damage_frame.link); transaction_commit_dirty();