Skip to content

Commit

Permalink
Fix crash on BCM platform
Browse files Browse the repository at this point in the history
 Program received signal SIGSEGV, Segmentation fault.
 xkb_context_ref (ctx=ctx@entry=0x0) at /usr/src/debug/libxkbcommon/0.5.0-r0/libxkbcommon-0.5.0/src/context.c:152
 152	    ctx->refcnt++;
 (gdb) bt
 #0  xkb_context_ref (ctx=ctx@entry=0x0) at /usr/src/debug/libxkbcommon/0.5.0-r0/libxkbcommon-0.5.0/src/context.c:152
 eyelash#1  0xb660efb8 in xkb_keymap_new (ctx=0x0, format=format@entry=XKB_KEYMAP_FORMAT_TEXT_V1, flags=XKB_KEYMAP_COMPILE_NO_FLAGS) at /usr/src/debug/libxkbcommon/0.5.0-r0/libxkbcommon-0.5.0/src/keymap-priv.c:65
 eyelash#2  0xb660ec42 in xkb_keymap_new_from_buffer (ctx=ctx@entry=0x0, buffer=buffer@entry=0xb605c000 "xkb_keymap {\nxkb_keycodes \"evdev-onemw_aliases(qwerty)\" {\n\tminimum = 8;\n\tmaximum = 446;\n\t<ESC>", ' ' <repeats 16 times>, "= 9;\n\t<AE01>", ' ' <repeats 15 times>, "= 10;\n\t<AE02>", ' ' <repeats 15 times>, "= 11;\n\t<AE03>", ' ' <repeats 15 times>, "= 12;\n\t"..., length=48673, format=format@entry=XKB_KEYMAP_FORMAT_TEXT_V1, flags=flags@entry=XKB_KEYMAP_COMPILE_NO_FLAGS) at /usr/src/debug/libxkbcommon/0.5.0-r0/libxkbcommon-0.5.0/src/keymap.c:191
 eyelash#3  0xb660eca2 in xkb_keymap_new_from_string (ctx=0x0, string=0xb605c000 "xkb_keymap {\nxkb_keycodes \"evdev-onemw_aliases(qwerty)\" {\n\tminimum = 8;\n\tmaximum = 446;\n\t<ESC>", ' ' <repeats 16 times>, "= 9;\n\t<AE01>", ' ' <repeats 15 times>, "= 10;\n\t<AE02>", ' ' <repeats 15 times>, "= 11;\n\t<AE03>", ' ' <repeats 15 times>, "= 12;\n\t"..., format=XKB_KEYMAP_FORMAT_TEXT_V1, flags=XKB_KEYMAP_COMPILE_NO_FLAGS) at /usr/src/debug/libxkbcommon/0.5.0-r0/libxkbcommon-0.5.0/src/keymap.c:162
 eyelash#4  0x000094ec in keyboard_keymap ()
 eyelash#5  0xb636f718 in ffi_call_VFP () at ../libffi-3.2.1/src/arm/sysv.S:377
 eyelash#6  0xb636fd2e in ffi_call (cif=cif@entry=0xbefff714, fn=<optimized out>, rvalue=rvalue@entry=0x0, avalue=avalue@entry=0xbefff7d4) at /usr/src/debug/libffi/3.2.1-r0/libffi-3.2.1/src/arm/ffi.c:344
 eyelash#7  0xb6630e46 in wl_closure_invoke (closure=closure@entry=0x1be28, flags=flags@entry=1, target=<optimized out>, target@entry=0x1bd58, opcode=opcode@entry=0, data=<optimized out>) at /usr/src/debug/wayland/1.11.0-r0/wayland-1.11.0/src/connection.c:935
 #8  0xb662f1fa in dispatch_event (display=display@entry=0x17378, queue=<optimized out>) at /usr/src/debug/wayland/1.11.0-r0/wayland-1.11.0/src/wayland-client.c:1310
 #9  0xb662fc94 in dispatch_queue (queue=0x173e4, display=0x17378) at /usr/src/debug/wayland/1.11.0-r0/wayland-1.11.0/src/wayland-client.c:1456
 #10 wl_display_dispatch_queue_pending (display=display@entry=0x17378, queue=queue@entry=0x173e4) at /usr/src/debug/wayland/1.11.0-r0/wayland-1.11.0/src/wayland-client.c:1698
 #11 0xb662fd6c in wl_display_dispatch_queue (display=0x17378, queue=0x173e4) at /usr/src/debug/wayland/1.11.0-r0/wayland-1.11.0/src/wayland-client.c:1674
 #12 0xb662ff1c in wl_display_roundtrip_queue (display=0x17378, queue=0x173e4) at /usr/src/debug/wayland/1.11.0-r0/wayland-1.11.0/src/wayland-client.c:1121
 #13 0xb662ff44 in wl_display_roundtrip (display=<optimized out>) at /usr/src/debug/wayland/1.11.0-r0/wayland-1.11.0/src/wayland-client.c:1150
 #14 0xb6ff5d4c in eglGetDisplay (display_id=<optimized out>) at /usr/src/debug/wayland-egl/rdkv-20180926+gitnightly_master_tag_09262018-r0/git/wayland-egl/wayland-egl.c:522
 #15 0x00009a50 in main ()
 (gdb) p ctx
 $1 = (struct xkb_context *) 0x0
  • Loading branch information
dwrobel committed Nov 28, 2019
1 parent 80527b9 commit d664443
Showing 1 changed file with 2 additions and 2 deletions.
4 changes: 2 additions & 2 deletions wayland-input.c
Original file line number Diff line number Diff line change
Expand Up @@ -170,6 +170,8 @@ static void draw_window (struct window *window) {
}

int main () {
xkb_context = xkb_context_new (XKB_CONTEXT_NO_FLAGS);

display = wl_display_connect (NULL);
struct wl_registry *registry = wl_display_get_registry (display);
wl_registry_add_listener (registry, &registry_listener, NULL);
Expand All @@ -178,8 +180,6 @@ int main () {
egl_display = eglGetDisplay (display);
eglInitialize (egl_display, NULL, NULL);

xkb_context = xkb_context_new (XKB_CONTEXT_NO_FLAGS);

struct window window;
create_window (&window, WIDTH, HEIGHT);

Expand Down

0 comments on commit d664443

Please sign in to comment.