Assert failure during the animation of a closed popup
Running Weston 30de9386, on ArchLinux, with GTK 3.24.31.
Here is the simplest way I’ve found to reproduce it:
- Open a GTK software (I’ve reproduced with Dino and gnome-disks, but not Firefox).
- Open a popup window, for instance the about dialog.
- Place the popup above the main window.
- Close the popup by clicking on the top-right cross. While the fade-out animation is playing, quickly click through it, on the main window.
Program terminated with signal SIGABRT, Aborted.
#0 0x00007f2ab33b8d22 in raise () from /usr/lib/libc.so.6
[Current thread is 1 (Thread 0x7f2ab2d16400 (LWP 461303))]
(gdb) bt
#0 0x00007f2ab33b8d22 in raise () at /usr/lib/libc.so.6
#1 0x00007f2ab33a2862 in abort () at /usr/lib/libc.so.6
#2 0x00007f2ab33a2747 in _nl_load_domain.cold () at /usr/lib/libc.so.6
#3 0x00007f2ab33b1616 in () at /usr/lib/libc.so.6
#4 0x00007f2ab005e6e1 in activate (shell=0x55bd916b2970, view=<optimized out>, seat=0x55bd9166c250, flags=3) at ../desktop-shell/shell.c:3751
#5 0x00007f2ab3358ebe in weston_compositor_run_button_binding (state=<optimized out>, button=272, time=0x7ffcb78ad320, pointer=0x55bd916ea560, compositor=0x55bd90f49460) at ../libweston/bindings.c:374
#6 weston_compositor_run_button_binding (state=WL_POINTER_BUTTON_STATE_PRESSED, button=272, time=0x7ffcb78ad320, pointer=0x55bd916ea560, compositor=0x55bd90f49460) at ../libweston/bindings.c:355
#7 notify_button (seat=<optimized out>, time=time@entry=0x7ffcb78ad320, button=272, state=state@entry=WL_POINTER_BUTTON_STATE_PRESSED) at ../libweston/input.c:1902
#8 0x00007f2ab3568e07 in handle_pointer_button (pointer_event=0x55bd9179b3b0, libinput_device=0x55bd91695330) at ../libweston/libinput-device.c:194
#9 evdev_device_process_event (event=0x55bd9179b3b0) at ../libweston/libinput-device.c:544
#10 udev_input_process_event (event=0x55bd9179b3b0) at ../libweston/libinput-seat.c:208
#11 process_event (event=0x55bd9179b3b0) at ../libweston/libinput-seat.c:218
#12 process_events (input=input@entry=0x55bd90f513d8) at ../libweston/libinput-seat.c:228
#13 0x00007f2ab35693cd in udev_input_dispatch (input=0x55bd90f513d8) at ../libweston/libinput-seat.c:239
#14 libinput_source_dispatch (fd=<optimized out>, mask=<optimized out>, data=0x55bd90f513d8) at ../libweston/libinput-seat.c:249
#15 0x00007f2ab3315a52 in wl_event_loop_dispatch (loop=0x55bd90f40f60, timeout=timeout@entry=-1) at ../wayland/src/event-loop.c:1027
#16 0x00007f2ab3312dc7 in wl_display_run (display=display@entry=0x55bd90f46db0) at ../wayland/src/wayland-server.c:1408
#17 0x00007f2ab3587af5 in wet_main (argc=<optimized out>, argv=0x7ffcb78adea8, test_data=0x0) at ../compositor/main.c:3565
#18 0x00007f2ab33a3b25 in __libc_start_main () at /usr/lib/libc.so.6
#19 0x000055bd90c3305e in _start ()