wlr_scene: Only do disable cleanup when explicit damage is given

We don't want to iterate the subtree for trivial update scenarios. We only
care when a scene is reparented or disabled in which both cases provides
us with explicit damage
This commit is contained in:
Alexander Orzechowski 2026-01-07 12:12:38 -05:00
parent ef19f52ca9
commit ed7b633669

View file

@ -703,9 +703,9 @@ static void scene_node_update(struct wlr_scene_node *node,
int x, y;
if (!wlr_scene_node_coords(node, &x, &y)) {
scene_node_cleanup_when_disabled(node, scene->restack_xwayland_surfaces, &scene->outputs);
if (damage) {
scene_node_cleanup_when_disabled(node, scene->restack_xwayland_surfaces, &scene->outputs);
scene_update_region(scene, damage);
scene_damage_outputs(scene, damage);
pixman_region32_fini(damage);