From 6ddb9e51bd90b0074402c3e4c361f83adb0e402a Mon Sep 17 00:00:00 2001
From: Alexander Orzechowski <orzechowski.alexander@gmail.com>
Date: Sat, 16 Apr 2022 05:39:22 -0400
Subject: wlr_scene_output: Send output leave events before destroying the
 output

---
 types/scene/wlr_scene.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/types/scene/wlr_scene.c b/types/scene/wlr_scene.c
index e1e381de..656f6626 100644
--- a/types/scene/wlr_scene.c
+++ b/types/scene/wlr_scene.c
@@ -982,12 +982,12 @@ static void scene_output_send_leave_iterator(struct wlr_surface *surface,
 }
 
 void wlr_scene_output_destroy(struct wlr_scene_output *scene_output) {
-	wlr_addon_finish(&scene_output->addon);
-	wl_list_remove(&scene_output->link);
-
 	wlr_scene_output_for_each_surface(scene_output,
 		scene_output_send_leave_iterator, scene_output->output);
 
+	wlr_addon_finish(&scene_output->addon);
+	wl_list_remove(&scene_output->link);
+
 	free(scene_output);
 }
 
-- 
cgit v1.2.3