]> git.mdlowis.com Git - proto/labwc.git/commitdiff
osd: add null-check for output->osd_scene.tree
authortokyo4j <hrak1529@gmail.com>
Sat, 9 Aug 2025 10:53:10 +0000 (19:53 +0900)
committerJohan Malm <johanmalm@users.noreply.github.com>
Sat, 9 Aug 2025 11:03:41 +0000 (12:03 +0100)
`wlr_scene_node_destroy(&output->osd_scene.tree->node);` does nothing
for null pointer, but ASAN is unhappy about accessing (NULL)->node.

src/osd.c

index 6ae3381de1f54e9a71c12c2d7717e26253343611..39846795395745d1851afc435024ed82d33fee35 100644 (file)
--- a/src/osd.c
+++ b/src/osd.c
@@ -33,9 +33,10 @@ destroy_osd_scenes(struct server *server)
 {
        struct output *output;
        wl_list_for_each(output, &server->outputs, link) {
-               wlr_scene_node_destroy(&output->osd_scene.tree->node);
-               output->osd_scene.tree = NULL;
-
+               if (output->osd_scene.tree) {
+                       wlr_scene_node_destroy(&output->osd_scene.tree->node);
+                       output->osd_scene.tree = NULL;
+               }
                wl_array_release(&output->osd_scene.items);
                wl_array_init(&output->osd_scene.items);
        }