Skip to content

render/egl: fix uninitialized pointers in init_dmabuf_formats

Simon Zeni requested to merge bl4ckb0ne/wlroots:egl_no_modifiers into master

modifiers and external_only are never initialized, and free'd later. This commit explicitly initializes them to NULL to prevent segfaults on free()

Stacktrace

Thread 1 "wxrc" received signal SIGSEGV, Segmentation fault.
get_meta (p=p@entry=0x7fffffffe610 "\220\346\377\377\377\177") at src/malloc/mallocng/meta.h:135
135	src/malloc/mallocng/meta.h: No such file or directory.
(gdb) bt
#0  get_meta (p=p@entry=0x7fffffffe610 "\220\346\377\377\377\177") at src/malloc/mallocng/meta.h:135
#1  0x00007ffff7f8a931 in __libc_free (p=0x7fffffffe610) at src/malloc/mallocng/free.c:105
#2  0x00007ffff7e74258 in init_dmabuf_formats (egl=0x7ffff7adee90) at ../subprojects/wlroots/render/egl.c:179
#3  0x00007ffff7e74b79 in egl_init_display (egl=0x7ffff7adee90, display=0x7ffff7aae090) at ../subprojects/wlroots/render/egl.c:357
#4  0x00007ffff7e74caf in egl_init (egl=0x7ffff7adee90, platform=12607, remote_display=0x7ffff7de7b60) at ../subprojects/wlroots/render/egl.c:382
#5  0x00007ffff7e752e6 in wlr_egl_create_with_drm_fd (drm_fd=8) at ../subprojects/wlroots/render/egl.c:517
#6  0x00007ffff7e78768 in wlr_gles2_renderer_create_with_drm_fd (drm_fd=8) at ../subprojects/wlroots/render/gles2/renderer.c:677
#7  0x000055555558d67d in wxrc_server_init (server=0x7fffffffe790) at ../wxrc/server.c:166
#8  0x000055555557f55e in main (argc=4, argv=0x7fffffffe948) at ../wxrc/main.c:101

Merge request reports

Loading