aboutsummaryrefslogtreecommitdiff
path: root/include/backend
diff options
context:
space:
mode:
authorAlexander Orzechowski <alex@ozal.ski>2023-10-07 13:31:20 -0400
committerAlexander Orzechowski <alex@ozal.ski>2023-10-07 13:31:20 -0400
commite1e911d425fde6ce85475de95b44aa1340725224 (patch)
tree89387092679013d8d88c044ce2c8f09308f906a6 /include/backend
parent5fb0007e0249388792f3772c30bfabf8d551dec0 (diff)
scene_output_layout: Don't destroy output when output layout is destroyed
There were a couple of problems with this: 1. The behavior is unexpected. Typically objects in wlroots won't also destroy objects that they depend on. For instance, wlr_scene_output will not destroy the wlr_output when it's destroyed. It shouldn't be any different for scene layouts. 2. This fixes a crash where because wlr_output_layout and wlr_scene_output are both addons to wlr_output, we might get into a situation where wl_list_for_each_safe might malfunction. See [1] This means that the compositor needs to manually destroy the output when they destroy the layout, hence ~breaking. Compositors can just call `wlr_scene_output_destroy()` if they want to destroy both at the same time. [1] https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/4358#note_2106260 This reverts commit 1a731596c5bcd252d8796cacb59af8b20ceb914f. Co-authored-by: Kirill Primak <vyivel@eclair.cafe>
Diffstat (limited to 'include/backend')
0 files changed, 0 insertions, 0 deletions