gtk 3.24.2 causes firefox to segfault after start
Steps to reproduce
- Updated to gtk 3.24.2
- Started firefox (63.0.3 or 64.0 doesn't matter)
- Firefox crashes directly after starting.
If I go back to 3.24.1 the crash vanishes. It also doesn't happen under kwin_wayland --xwayland.
Version information
- gtk 3.24.2
- Fairly up to date Linux
- for Linux, which distribution
- ./configure --build=x86_64-pc-linux-gnu --host=x86_64-pc-linux-gnu --prefix=/usr/x86_64-pc-linux-gnu --bindir=/usr/x86_64-pc-linux-gnu/bin --sbindir=/usr/x86_64-pc-linux-gnu/bin --libdir=/usr/x86_64-pc-linux-gnu/lib --datadir=/usr/share --datarootdir=/usr/share --docdir=/usr/share/doc/gtk+-3.24.1 --infodir=/usr/share/info --mandir=/usr/share/man --sysconfdir=/etc --localstatedir=/var/lib --disable-dependency-tracking --disable-silent-rules --enable-fast-install --prefix=/usr --exec-prefix=/usr/x86_64-pc-linux-gnu --includedir=/usr/x86_64-pc-linux-gnu/include --disable-man --disable-papi --disable-win32-gles --disable-cloudprint --disable-colord --enable-cups --disable-gtk-doc --enable-introspection --enable-wayland-backend --enable-x11-backend --enable-xcomposite --enable-xdamage --enable-xfixes --enable-xinerama --enable-xrandr
Warnings
(firefox:30200): Gdk-ERROR **: 22:27:19.393: The program 'firefox' received an X Window System error.
This probably reflects a bug in the program.
The error was 'BadMatch (invalid parameter attributes)'.
(Details: serial 403 error_code 8 request_code 2 (core protocol) minor_code 0)
(Note to programmers: normally, X errors are reported asynchronously;
that is, you will receive the error a while after causing it.
To debug your program, run it with the GDK_SYNCHRONIZE environment
variable to change this behavior. You can then get a meaningful
backtrace from your debugger if you break on the gdk_x_error() function.)
[Child 30276, Chrome_ChildThread] WARNING: pipe error (30): Connection reset by peer: file /var/tmp/paludis/build/net-www-firefox-64.0/work/firefox-64.0/ipc/chromium/src/chrome/common/ipc_channel_posix.cc, line 363
Sandbox: [Child 30276, Chrome_ChildThread] WARNING: pipe error (29): Connection reset by peer: file /var/tmp/paludis/build/net-www-firefox-64.0/work/firefox-64.0/ipc/chromium/src/chrome/common/ipc_channel_posix.cc, line 363
Unexpected EOF, op 1 flags 04 path /usr/share/fonts/X11/noto/NotoSans-Regular.ttf
[Child 30276, Chrome_ChildThread] WARNING: pipe error (27): Connection reset by peer: file /var/tmp/paludis/build/net-www-firefox-64.0/work/firefox-64.0/ipc/chromium/src/chrome/common/ipc_channel_posix.cc, line 363
[Child 30276, Chrome_ChildThread] WARNING: pipe error (26): Connection reset by peer: file /var/tmp/paludis/build/net-www-firefox-64.0/work/firefox-64.0/ipc/chromium/src/chrome/common/ipc_channel_posix.cc, line 363
[Child 30276, Chrome_ChildThread] WARNING: pipe error (25): Connection reset by peer: file /var/tmp/paludis/build/net-www-firefox-64.0/work/firefox-64.0/ipc/chromium/src/chrome/common/ipc_channel_posix.cc, line 363
zsh: trace trap (core dumped) firefox
Backtrace
Thread 1 "firefox" received signal SIGTRAP, Trace/breakpoint trap.
0x00007ffff635efa5 in _g_log_abort (breakpoint=1) at ../glib-2.58.0/glib/gmessages.c:554
554 ../glib-2.58.0/glib/gmessages.c: No such file or directory.
(gdb) bt
#0 0x00007ffff635efa5 in _g_log_abort (breakpoint=1) at ../glib-2.58.0/glib/gmessages.c:554
#1 0x00007ffff636173c in g_log_writer_default (log_level=6,
log_level@entry=G_LOG_LEVEL_ERROR, fields=fields@entry=0x7fffffffb9f0, n_fields=n_fields@entry=6, user_data=user_data@entry=0x0)
at ../glib-2.58.0/glib/gmessages.c:2688
#2 0x00007ffff635fb67 in g_log_structured_array (log_level=G_LOG_LEVEL_ERROR, fields=0x7fffffffb9f0, n_fields=6) at ../glib-2.58.0/glib/gmessages.c:1923
#3 0x00007ffff6360506 in g_log_structured_standard
(log_domain=0x7ffff6f60017 "Gdk", log_level=G_LOG_LEVEL_ERROR, file=<optimized out>, line=<optimized out>, func=<optimized out>, message_format=<optimized out>) at ../glib-2.58.0/glib/gmessages.c:1980
#4 0x00007ffff6f29563 in _gdk_x11_display_error_event () at /usr/x86_64-pc-linux-gnu/lib/libgdk-3.so.0
#5 0x00007ffff6f35cb3 in gdk_x_error () at /usr/x86_64-pc-linux-gnu/lib/libgdk-3.so.0
#6 0x00007ffff6b6ed85 in _XError () at /usr/x86_64-pc-linux-gnu/lib/libX11.so.6
#7 0x00007ffff6b6be37 in handle_error () at /usr/x86_64-pc-linux-gnu/lib/libX11.so.6
#8 0x00007ffff6b6becd in handle_response () at /usr/x86_64-pc-linux-gnu/lib/libX11.so.6
#9 0x00007ffff6b6cd90 in _XReply () at /usr/x86_64-pc-linux-gnu/lib/libX11.so.6
#10 0x00007ffff6b585ee in XInternAtom () at /usr/x86_64-pc-linux-gnu/lib/libX11.so.6
#11 0x00007ffff6f365bc in gdk_x11_atom_to_xatom_for_display () at /usr/x86_64-pc-linux-gnu/lib/libgdk-3.so.0
#12 0x00007ffff6f390f2 in gdk_x11_screen_supports_net_wm_hint () at /usr/x86_64-pc-linux-gnu/lib/libgdk-3.so.0
#13 0x00007ffff6f3df96 in on_frame_clock_after_paint () at /usr/x86_64-pc-linux-gnu/lib/libgdk-3.so.0
#17 0x00007ffff65c373a in <emit signal ??? on instance 0x7fffe3695210 [GdkFrameClockIdle]>
(instance=<optimized out>, signal_id=<optimized out>, detail=<optimized out>) at ../glib-2.58.0/gobject/gsignal.c:3447
#14 0x00007ffff65a6efd in g_closure_invoke
(closure=0x7fffe36db080, return_value=0x0, n_param_values=1, param_values=0x7fffffffc4a0, invocation_hint=0x7fffffffc440)
at ../glib-2.58.0/gobject/gclosure.c:810
#15 0x00007ffff65ba007 in signal_emit_unlocked_R
(node=node@entry=0x7ffff78c5c40, detail=detail@entry=0, instance=instance@entry=0x7fffe3695210, emission_return=emission_return@entry=0x0, instance_and_params=instance_and_params@entry=0x7fffffffc4a0) at ../glib-2.58.0/gobject/gsignal.c:3635
#16 0x00007ffff65c308e in g_signal_emit_valist
(instance=<optimized out>, signal_id=<optimized out>, detail=<optimized out>, var_args=var_args@entry=0x7fffffffc638)
at ../glib-2.58.0/gobject/gsignal.c:3391
#18 0x00007ffff6f09e4a in gdk_frame_clock_paint_idle () at /usr/x86_64-pc-linux-gnu/lib/libgdk-3.so.0
#19 0x00007ffff6ef5a18 in gdk_threads_dispatch () at /usr/x86_64-pc-linux-gnu/lib/libgdk-3.so.0
#20 0x00007ffff6359cb3 in g_timeout_dispatch (source=0x7fffe055bc10, callback=<optimized out>, user_data=<optimized out>) at ../glib-2.58.0/glib/gmain.c:4667
#21 0x00007ffff6359257 in g_main_dispatch (context=0x7ffff78a8b30) at ../glib-2.58.0/glib/gmain.c:3182
#22 0x00007ffff6359257 in g_main_context_dispatch (context=context@entry=0x7ffff78a8b30) at ../glib-2.58.0/glib/gmain.c:3847
#23 0x00007ffff6359618 in g_main_context_iterate (context=context@entry=0x7ffff78a8b30, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>)
at ../glib-2.58.0/glib/gmain.c:3920
#24 0x00007ffff635969c in g_main_context_iteration (context=0x7ffff78a8b30, may_block=1) at ../glib-2.58.0/glib/gmain.c:3981
#25 0x00007ffff2ca45af in nsAppShell::ProcessNextNativeEvent(bool) () at /usr/x86_64-pc-linux-gnu/lib/firefox/libxul.so
#26 0x00007ffff2c71132 in nsBaseAppShell::DoProcessNextNativeEvent(bool) () at /usr/x86_64-pc-linux-gnu/lib/firefox/libxul.so
#27 0x00007ffff2c712b6 in nsBaseAppShell::OnProcessNextEvent(nsIThreadInternal*, bool) () at /usr/x86_64-pc-linux-gnu/lib/firefox/libxul.so
#28 0x00007ffff0e034e1 in nsThread::ProcessNextEvent(bool, bool*) () at /usr/x86_64-pc-linux-gnu/lib/firefox/libxul.so
#29 0x00007ffff0e056e8 in NS_ProcessNextEvent(nsIThread*, bool) () at /usr/x86_64-pc-linux-gnu/lib/firefox/libxul.so
#30 0x00007ffff11155c0 in mozilla::ipc::MessagePump::Run(base::MessagePump::Delegate*) () at /usr/x86_64-pc-linux-gnu/lib/firefox/libxul.so
#31 0x00007ffff10f3b64 in MessageLoop::Run() () at /usr/x86_64-pc-linux-gnu/lib/firefox/libxul.so
#32 0x00007ffff2c6e308 in nsBaseAppShell::Run() () at /usr/x86_64-pc-linux-gnu/lib/firefox/libxul.so
#33 0x00007ffff3a35c4e in nsAppStartup::Run() () at /usr/x86_64-pc-linux-gnu/lib/firefox/libxul.so
#34 0x00007ffff3ad5b30 in XREMain::XRE_mainRun() () at /usr/x86_64-pc-linux-gnu/lib/firefox/libxul.so
#35 0x00007ffff3ad6a18 in XREMain::XRE_main(int, char**, mozilla::BootstrapConfig const&) () at /usr/x86_64-pc-linux-gnu/lib/firefox/libxul.so
#36 0x00007ffff3ad6d2c in XRE_main(int, char**, mozilla::BootstrapConfig const&) () at /usr/x86_64-pc-linux-gnu/lib/firefox/libxul.so
#37 0x000055555555c45d in do_main(int, char**, char**) ()
#38 0x000055555555bd79 in main ()