wlroots/render
Simon Ser 32c30481d3
render/egl: fix gbm_device use-after-free
The GBM device needs to be destroyed after the EGL display.

    ==50931==ERROR: AddressSanitizer: SEGV on unknown address 0x7fe40a000049 (pc 0x7fe446121d30 bp 0x60400001bbd0 sp 0x7ffc99c774d0 T0)
    ==50931==The signal is caused by a READ memory access.
        #0 0x7fe446121d30  (/usr/lib/dri/radeonsi_dri.so+0x5f0d30)
        #1 0x7fe4474717bd  (/usr/lib/../lib/libEGL_mesa.so.0+0x177bd)
        #2 0x7fe4474677d9  (/usr/lib/../lib/libEGL_mesa.so.0+0xd7d9)
        #3 0x7fe44cca7b6f in wlr_egl_destroy ../subprojects/wlroots/render/egl.c:379
        #4 0x7fe44ccc2626 in gles2_destroy ../subprojects/wlroots/render/gles2/renderer.c:705
        #5 0x7fe44ccb5041 in wlr_renderer_destroy ../subprojects/wlroots/render/wlr_renderer.c:37
        #6 0x7fe44cd17850 in backend_destroy ../subprojects/wlroots/backend/wayland/backend.c:296
        #7 0x7fe44ccca4de in wlr_backend_destroy ../subprojects/wlroots/backend/backend.c:48
        #8 0x7fe44cd11b21 in multi_backend_destroy ../subprojects/wlroots/backend/multi/backend.c:58
        #9 0x7fe44cd125b0 in handle_display_destroy ../subprojects/wlroots/backend/multi/backend.c:125
        #10 0x7fe44c315e0e  (/usr/lib/libwayland-server.so.0+0x8e0e)
        #11 0x7fe44c3165a6 in wl_display_destroy (/usr/lib/libwayland-server.so.0+0x95a6)
        #12 0x55a2c8870683 in server_fini ../sway/server.c:203
        #13 0x55a2c886cbf2 in main ../sway/main.c:436
        #14 0x7fe44b77c151 in __libc_start_main (/usr/lib/libc.so.6+0x28151)
        #15 0x55a2c883172d in _start (/home/simon/src/sway/build/sway/sway+0x33472d)
2021-01-16 09:07:56 +01:00
..
gles2 render/gles2: make EGL context current in bind_buffer 2021-01-16 09:06:17 +01:00
allocator.c render/allocator: ignore NULL in wlr_allocator_destroy 2020-12-17 20:34:19 +01:00
dmabuf.c render/dmabuf: add wlr_dmabuf_attributes_copy 2019-06-07 09:06:11 -04:00
drm_format_set.c render/drm_format_set: add special case for LINEAR-only formats 2020-12-30 11:17:43 +01:00
egl.c render/egl: fix gbm_device use-after-free 2021-01-16 09:07:56 +01:00
gbm_allocator.c render/gbm_allocator: fix gbm_device use-after-free 2021-01-15 19:27:49 +01:00
meson.build render: extract gles2 build files to subdir 2021-01-15 22:13:04 +01:00
swapchain.c render/swapchain: add support for buffer age 2020-11-15 22:48:42 +01:00
wlr_renderer.c render: drop egl parameters from wlr_renderer_autocreate 2021-01-16 08:57:42 +01:00
wlr_texture.c render/texture: make write_pixels optional 2020-04-28 21:45:14 +02:00