xserver-multidpi/hw/xwayland
Olivier Fourdan a5f439dcd2 xwayland: Remove pending stream reference when freeing
The EGLStream backend keeps a queue of pending streams for each Xwayland
window.

However, when this pending queue is freed, the corresponding private
data may not be cleared (typically if the pixmap for this window has
changed before the compositor finished attaching the consumer for the
window's pixmap's original eglstream), leading to a use-after-free and a
crash when trying to use that data as the window pixmap.

Make sure to clear the private data when the pending stream is freed.

Closes: https://gitlab.freedesktop.org/xorg/xserver/-/issues/1055
Signed-off-by: Olivier Fourdan <ofourdan@redhat.com>
Tested-by: Karol Szuster <karolsz9898@gmail.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
2020-09-22 19:23:52 +00:00
..
.gitignore xwayland: Add wp_viewport wayland extension support 2019-10-12 12:19:14 +02:00
drm.xml wayland: Sync drm.xml with Mesa 2017-07-05 10:13:04 -04:00
Makefile.am xwayland: Add a pkg-config file for Xwayland 2020-07-08 08:56:32 +00:00
meson.build xwayland: Add a pkg-config file for Xwayland 2020-07-08 08:56:32 +00:00
xwayland-cursor.c xwayland: Cleanup and remove xwayland.h 2019-12-20 16:19:01 +01:00
xwayland-cursor.h xwayland: Move Xwayland cursor declarations 2019-12-20 16:19:01 +01:00
xwayland-cvt.c xwayland: Cleanup and remove xwayland.h 2019-12-20 16:19:01 +01:00
xwayland-cvt.h xwayland: Move Xwayland CVT declaration 2019-12-20 16:19:01 +01:00
xwayland-glamor-eglstream.c xwayland: Remove pending stream reference when freeing 2020-09-22 19:23:52 +00:00
xwayland-glamor-gbm.c xwayland: Add a flag for n-buffers in EGL backend 2020-09-22 17:59:42 +02:00
xwayland-glamor-xv.c xwayland: Cleanup and remove xwayland.h 2019-12-20 16:19:01 +01:00
xwayland-glamor.c xwayland: Add a flag for n-buffers in EGL backend 2020-09-22 17:59:42 +02:00
xwayland-glamor.h xwayland: Add a flag for n-buffers in EGL backend 2020-09-22 17:59:42 +02:00
xwayland-glx.c xwayland: Set the vendor name for GLX_EXT_libglvnd 2020-06-05 14:50:55 -04:00
xwayland-glx.h xwayland: Move Xwayland GLX declaration 2019-12-20 16:19:01 +01:00
xwayland-input.c xwayland: Handle NULL xwl_seat in xwl_seat_can_emulate_pointer_warp 2020-07-21 15:58:42 +02:00
xwayland-input.h xwayland: Move Xwayland cursor declarations 2019-12-20 16:19:01 +01:00
xwayland-output.c xwayland: Replace need_rotate boolean with simple check on xdg-output 2020-09-01 13:13:57 +00:00
xwayland-output.h xwayland: Move Xwayland output declarations 2019-12-20 16:19:01 +01:00
xwayland-pixmap.c xwayland: Rename xwl_pixmap_cb → xwl_buffer_release_cb 2020-07-07 13:47:11 +00:00
xwayland-pixmap.h xwayland: Rename xwl_pixmap_cb → xwl_buffer_release_cb 2020-07-07 13:47:11 +00:00
xwayland-present.c xwayland: Add a flag to expose EGL backend features 2020-09-22 17:59:42 +02:00
xwayland-present.h xwayland: Rename present event lists 2020-07-22 11:01:42 +02:00
xwayland-screen.c xwayland: Add a flag to expose EGL backend features 2020-09-22 17:59:42 +02:00
xwayland-screen.h xwayland: Fix infinite loop at startup 2020-04-27 11:42:13 +02:00
xwayland-shm.c xwayland: Remove harmless duplicated #include 2020-07-20 00:19:22 +00:00
xwayland-shm.h xwayland: Move SHM declarations to their own header 2019-12-20 16:19:01 +01:00
xwayland-types.h xwayland: Move Xwayland structures to their own header 2019-12-20 16:19:01 +01:00
xwayland-vidmode.c xwayland: Initialise values in xwlVidModeGetGamma() 2020-07-03 10:56:43 +00:00
xwayland-vidmode.h xwayland: Move Xwayland vidmode declaration 2019-12-20 16:19:01 +01:00
xwayland-window-buffers.c xwayland: Add a flag for n-buffers in EGL backend 2020-09-22 17:59:42 +02:00
xwayland-window-buffers.h xwayland: Cleanup and remove xwayland.h 2019-12-20 16:19:01 +01:00
xwayland-window.c xwayland: Move xwl_surface_damage definition to xwayland-screen.c 2020-07-07 13:47:11 +00:00
xwayland-window.h xwayland: port rooted xwayland from wl_shell to xdg-shell protocol 2020-02-28 16:23:58 +00:00
xwayland.c xwayland: Add version command line option 2020-02-14 17:04:44 +01:00
xwayland.pc.in xwayland: Add a pkg-config file for Xwayland 2020-07-08 08:56:32 +00:00