From 0ee1db3ed026294316369624534ac6b993974553 Mon Sep 17 00:00:00 2001 From: Simon Ser Date: Thu, 5 Mar 2026 15:28:21 +0100 Subject: [PATCH] Fix segfault during cleanup when wlr_scene isn't created If backend creation fails, server.scene is NULL. Discovered when investigating the following issue: https://github.com/cage-kiosk/cage/issues/481 --- cage.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/cage.c b/cage.c index 7c3d89d..7519f29 100644 --- a/cage.c +++ b/cage.c @@ -667,7 +667,9 @@ end: /* This function is not null-safe, but we only ever get here with a proper wl_display. */ wl_display_destroy(server.wl_display); - wlr_scene_node_destroy(&server.scene->tree.node); + if (server.scene != NULL) { + wlr_scene_node_destroy(&server.scene->tree.node); + } wlr_allocator_destroy(server.allocator); wlr_renderer_destroy(server.renderer); return ret;