mirror of
https://gitlab.freedesktop.org/wlroots/wlroots.git
synced 2026-03-22 05:34:24 -04:00
Introduce wlr_shm
This is a re-implementation of wl_shm. The motivations for using this over the one shipped in libwayland are: - Properly handle SIGBUS when accessing a wl_buffer's underlying data after the wl_buffer protocol object has been destroyed. With the current code, we just crash if the client does that and then shrinks the backing file. - No need to fight the wl_shm_buffer API anymore. This was awkward because we weren't notified when clients created a wl_shm buffer, and this doesn't play well with our wlr_buffer abstraction. - Access to the underlying FD. This makes it possible to forward the wl_shm buffer to a parent compositor with the Wayland/X11 backends. - Better stride checks. We can use our format table to ensure that the stride is consistent with the bpp and width.
This commit is contained in:
parent
6e88eeadeb
commit
0ae3c7b1a2
3 changed files with 580 additions and 0 deletions
|
|
@ -71,6 +71,7 @@ wlr_files += files(
|
|||
'wlr_screencopy_v1.c',
|
||||
'wlr_server_decoration.c',
|
||||
'wlr_session_lock_v1.c',
|
||||
'wlr_shm.c',
|
||||
'wlr_single_pixel_buffer_v1.c',
|
||||
'wlr_subcompositor.c',
|
||||
'wlr_switch.c',
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue