wlroots/include
Alexander Orzechowski e1e911d425 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 1a731596c5.

Co-authored-by: Kirill Primak <vyivel@eclair.cafe>
2023-10-07 13:31:20 -04:00
..
backend docs: replace the less commonly used "::" with "." 2023-10-02 22:10:16 +03:00
interfaces types/wlr_input_device: move init and finish function to private API 2022-03-07 16:37:41 +00:00
render render/vulkan: constrain blend to output subpass to redrawn region 2023-10-05 11:45:32 +00:00
types docs: replace the less commonly used "::" with "." 2023-10-02 22:10:16 +03:00
util util: add struct to track union of rectangles 2023-10-05 11:45:32 +00:00
wlr scene_output_layout: Don't destroy output when output layout is destroyed 2023-10-07 13:31:20 -04:00
xcursor Add some missing includes/declarations 2023-06-05 21:06:19 +00:00
xwayland docs: replace the less commonly used "::" with "." 2023-10-02 22:10:16 +03:00
meson.build build: unify naming for HAVE_* defines 2022-12-06 22:39:45 +00:00