Weston segfaults when starting dolphin-emu’s inexistant Wayland backend
Here is the stack trace:
(gdb) bt
#0 weston_view_schedule_repaint (view=0x562c82647b60) at ../libweston/compositor.c:1697
#1 0x00007f75cd35ce95 in weston_view_damage_below (view=0x562c82647b60) at ../libweston/compositor.c:1055
#2 0x00007f75c8f0d656 in weston_desktop_view_destroy (view=0x562c8262ab80) at ../libweston-desktop/surface.c:119
#3 0x00007f75c8f0d805 in weston_desktop_surface_destroy (surface=0x562c82646650) at ../libweston-desktop/surface.c:158
#4 0x00007f75cd359939 in wl_signal_emit (data=0x562c82647600, signal=0x562c82647608) at /usr/include/wayland-server-core.h:478
#5 weston_surface_destroy (surface=0x562c82647600) at ../libweston/compositor.c:2220
#6 0x00007f75cd313e90 in () at /usr/lib/libwayland-server.so.0
#7 0x00007f75cd313f11 in wl_resource_destroy () at /usr/lib/libwayland-server.so.0
#8 0x00007f75cd045a8d in () at /usr/lib/libffi.so.7
#9 0x00007f75cd04501b in () at /usr/lib/libffi.so.7
#10 0x00007f75cd317f62 in () at /usr/lib/libwayland-server.so.0
#11 0x00007f75cd3142dc in () at /usr/lib/libwayland-server.so.0
#12 0x00007f75cd315faa in wl_event_loop_dispatch () at /usr/lib/libwayland-server.so.0
#13 0x00007f75cd3144e7 in wl_display_run () at /usr/lib/libwayland-server.so.0
#14 0x00007f75cd380b9f in wet_main (argc=<optimized out>, argv=<optimized out>) at ../compositor/main.c:3388
#15 0x00007f75cd3b2002 in __libc_start_main () at /usr/lib/libc.so.6
#16 0x0000562c806e205e in _start ()
In this function, output
is (struct weston_output*)-40
(that is, 0xffffffffffffffd8
) which obviously can’t be dereferenced, hence the crash.