gnome-calendar issueshttps://gitlab.gnome.org/GNOME/gnome-calendar/-/issues2019-10-31T22:35:47Zhttps://gitlab.gnome.org/GNOME/gnome-calendar/-/issues/4553.34 Remote peer disconnected2019-10-31T22:35:47ZBjörn Daase3.34 Remote peer disconnectedFedora 31, gnome-calendar 3.34
Around 20% of the time I try to launch gnome-calendar, it does not start. The only thing printed to the command line is
`GDBus.Error:org.freedesktop.DBus.Error.NoReply: Remote peer disconnected`
I also h...Fedora 31, gnome-calendar 3.34
Around 20% of the time I try to launch gnome-calendar, it does not start. The only thing printed to the command line is
`GDBus.Error:org.freedesktop.DBus.Error.NoReply: Remote peer disconnected`
I also had a look whether I somehow get a backtrace in `gdb`, but that does not seem that useful for me. That is how it looks when the problem occurs:
```
➜ ~ gdb /usr/bin/gnome-calendar
GNU gdb (GDB) Fedora 8.3.50.20190824-24.fc31
Copyright (C) 2019 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Type "show copying" and "show warranty" for details.
This GDB was configured as "x86_64-redhat-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from /usr/bin/gnome-calendar...
Reading symbols from /usr/lib/debug/usr/bin/gnome-calendar-3.34.0-1.fc31.x86_64.debug...
(gdb) run
Starting program: /usr/bin/gnome-calendar
Missing separate debuginfo for /lib64/libical-glib.so.3
Try: dnf --enablerepo='*debug*' install /usr/lib/debug/.build-id/fe/d0ae9e30ba9b375cf308e116fb90808f92be97.debug
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".
[New Thread 0x7fffedad0700 (LWP 7100)]
[New Thread 0x7fffed2cf700 (LWP 7101)]
[New Thread 0x7fffecace700 (LWP 7102)]
[New Thread 0x7fffdffff700 (LWP 7103)]
GDBus.Error:org.freedesktop.DBus.Error.NoReply: Remote peer disconnected
[Thread 0x7fffecace700 (LWP 7102) exited]
[Thread 0x7fffed2cf700 (LWP 7101) exited]
[Thread 0x7fffedad0700 (LWP 7100) exited]
[Thread 0x7fffedad6c80 (LWP 7096) exited]
[Inferior 1 (process 7096) exited with code 01]
Missing separate debuginfos, use: dnf debuginfo-install GConf2-3.2.6-27.fc31.x86_64 at-spi2-atk-2.34.0-1.fc31.x86_64 at-spi2-core-2.34.0-1.fc31.x86_64 atk-2.34.1-1.fc31.x86_64 brotli-1.0.7-6.fc31.x86_64 bzip2-libs-1.0.8-1.fc31.x86_64 cairo-1.16.0-6.fc31.x86_64 cairo-gobject-1.16.0-6.fc31.x86_64 cyrus-sasl-lib-2.1.27-2.fc31.x86_64 dbus-glib-0.110-6.fc31.x86_64 dbus-libs-1.12.16-3.fc31.x86_64 dconf-0.34.0-1.fc31.x86_64 enchant2-2.2.5-2.fc31.x86_64 evolution-data-server-3.34.0-1.fc31.x86_64 expat-2.2.7-2.fc31.x86_64 fontconfig-2.13.92-3.fc31.x86_64 freetype-2.10.0-3.fc31.x86_64 fribidi-1.0.5-4.fc31.x86_64 gcr-3.33.4-1.fc31.x86_64 gcr-base-3.33.4-1.fc31.x86_64 gdk-pixbuf2-2.39.2-1.fc31.x86_64 geoclue2-libs-2.5.3-2.fc31.x86_64 geocode-glib-3.26.1-3.fc31.x86_64 gnome-online-accounts-3.34.0-1.fc31.x86_64 graphite2-1.3.13-1.fc31.x86_64 gstreamer1-1.16.0-2.fc31.x86_64 gstreamer1-plugins-base-1.16.0-2.fc31.x86_64 gtk3-3.24.11-1.fc31.x86_64 harfbuzz-2.6.0-1.fc31.x86_64 harfbuzz-icu-2.6.0-1.fc31.x86_64 json-glib-1.4.4-3.fc31.x86_64 libX11-1.6.8-3.fc31.x86_64 libX11-xcb-1.6.8-3.fc31.x86_64 libXau-1.0.9-2.fc31.x86_64 libXcomposite-0.4.4-17.fc31.x86_64 libXcursor-1.1.15-6.fc31.x86_64 libXdamage-1.1.4-17.fc31.x86_64 libXext-1.3.4-2.fc31.x86_64 libXfixes-5.0.3-10.fc31.x86_64 libXi-1.7.10-2.fc31.x86_64 libXinerama-1.1.4-4.fc31.x86_64 libXrandr-1.5.2-2.fc31.x86_64 libXrender-0.9.10-10.fc31.x86_64 libcom_err-1.45.3-1.fc31.x86_64 libdatrie-0.2.9-10.fc31.x86_64 libdazzle-3.34.0-1.fc31.x86_64 libepoxy-1.5.3-4.fc31.x86_64 libffi-3.1-23.fc31.x86_64 libgcc-9.2.1-1.fc31.x86_64 libgcrypt-1.8.4-4.fc31.x86_64 libglvnd-1.1.1-5.fc31.x86_64 libglvnd-egl-1.1.1-5.fc31.x86_64 libglvnd-gles-1.1.1-5.fc31.x86_64 libglvnd-glx-1.1.1-5.fc31.x86_64 libgweather-3.33.92-1.fc31.x86_64 libicu-63.2-3.fc31.x86_64 libidn2-2.2.0-2.fc31.x86_64 libjpeg-turbo-2.0.2-4.fc31.x86_64 libmount-2.34-2.fc31.x86_64 libnghttp2-1.39.2-1.fc31.x86_64 libnotify-0.7.8-3.fc31.x86_64 liboauth-1.0.3-13.fc31.x86_64 libpng-1.6.37-2.fc31.x86_64 libpsl-0.21.0-2.fc31.x86_64 libseccomp-2.4.1-1.fc31.x86_64 libsecret-0.19.1-1.fc31.x86_64 libselinux-2.9-5.fc31.x86_64 libsoup-2.68.1-1.fc31.x86_64 libssh-0.9.0-6.fc31.x86_64 libstdc++-9.2.1-1.fc31.x86_64 libtasn1-4.14-2.fc31.x86_64 libthai-0.1.28-3.fc31.x86_64 libunistring-0.9.10-6.fc31.x86_64 libwayland-client-1.17.0-2.fc31.x86_64 libwayland-cursor-1.17.0-2.fc31.x86_64 libwayland-egl-1.17.0-2.fc31.x86_64 libwebp-1.0.3-2.fc31.x86_64 libxcb-1.13.1-3.fc31.x86_64 libxslt-1.1.33-2.fc31.x86_64 nss-3.46.0-2.fc31.x86_64 p11-kit-0.23.16.1-2.fc31.x86_64 pango-1.44.6-1.fc31.x86_64 systemd-libs-243-1.fc31.x86_64 webkit2gtk3-2.26.0-1.fc31.x86_64 xz-libs-5.2.4-6.fc31.x86_64 zlib-1.2.11-18.fc31.x86_64
(gdb) t a a bt full
(gdb)
```GNOME 3.34Michael CatanzaroMichael Catanzarohttps://gitlab.gnome.org/GNOME/gnome-calendar/-/issues/448Segfault on startup in gcal_event_update_uid_internal2019-09-15T21:20:08ZBjörn DaaseSegfault on startup in gcal_event_update_uid_internalFedora Rawhide, gnome-calendar 3.33.4
gnome-calendar always crashes on startup. This is the backtrace
```
GNU gdb (GDB) Fedora 8.3.50.20190824-24.fc31
Copyright (C) 2019 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 o...Fedora Rawhide, gnome-calendar 3.33.4
gnome-calendar always crashes on startup. This is the backtrace
```
GNU gdb (GDB) Fedora 8.3.50.20190824-24.fc31
Copyright (C) 2019 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Type "show copying" and "show warranty" for details.
This GDB was configured as "x86_64-redhat-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from /usr/bin/gnome-calendar...
Reading symbols from /usr/lib/debug/usr/bin/gnome-calendar-3.33.4-2.fc31.x86_64.debug...
(gdb) run
Starting program: /usr/bin/gnome-calendar
Missing separate debuginfo for /lib64/libical-glib.so.3
Try: dnf --enablerepo='*debug*' install /usr/lib/debug/.build-id/fe/d0ae9e30ba9b375cf308e116fb90808f92be97.debug
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".
[New Thread 0x7fffedb00700 (LWP 32829)]
[New Thread 0x7fffed2ff700 (LWP 32830)]
[New Thread 0x7fffecafe700 (LWP 32831)]
[New Thread 0x7fffdffff700 (LWP 32832)]
Missing separate debuginfo for /usr/lib64/gio/modules/libgvfsdbus.so
Try: dnf --enablerepo='*debug*' install /usr/lib/debug/.build-id/7e/1ee4cb0eaf21fb6ca52327604053298c2b5393.debug
Missing separate debuginfo for /usr/lib64/gvfs/libgvfscommon.so
Try: dnf --enablerepo='*debug*' install /usr/lib/debug/.build-id/69/bc4680e0432b8f826bbb43fc43af6977537c44.debug
(gnome-calendar:32825): dzl-menu-manager-WARNING **: 08:47:17.400: Link of type "section" missing "id=". Merging will not be possible.
[New Thread 0x7fffdf7fe700 (LWP 32837)]
[New Thread 0x7fffde78a700 (LWP 32838)]
[New Thread 0x7fffddf89700 (LWP 32839)]
[New Thread 0x7fffdd788700 (LWP 32840)]
[New Thread 0x7fffdcf87700 (LWP 32841)]
[New Thread 0x7fffcb01a700 (LWP 32842)]
[New Thread 0x7fffca819700 (LWP 32843)]
[New Thread 0x7fffca018700 (LWP 32844)]
Missing separate debuginfo for /usr/lib64/gio/modules/libgioremote-volume-monitor.so
Try: dnf --enablerepo='*debug*' install /usr/lib/debug/.build-id/d1/6a7de4332742e0ff5e9a98811321876007a3e3.debug
[Thread 0x7fffca018700 (LWP 32844) exited]
[New Thread 0x7fffca018700 (LWP 32853)]
[New Thread 0x7fffc8fd1700 (LWP 32854)]
[New Thread 0x7fffa3fff700 (LWP 32855)]
[Thread 0x7fffca018700 (LWP 32853) exited]
[Thread 0x7fffc8fd1700 (LWP 32854) exited]
[New Thread 0x7fffc8fd1700 (LWP 32860)]
[New Thread 0x7fffca018700 (LWP 32862)]
[Thread 0x7fffa3fff700 (LWP 32855) exited]
[New Thread 0x7fffa3fff700 (LWP 32863)]
[Thread 0x7fffc8fd1700 (LWP 32860) exited]
[Thread 0x7fffca018700 (LWP 32862) exited]
[Thread 0x7fffa3fff700 (LWP 32863) exited]
[New Thread 0x7fffa3fff700 (LWP 32868)]
[New Thread 0x7fffca018700 (LWP 32869)]
[New Thread 0x7fffc8fd1700 (LWP 32870)]
[Thread 0x7fffa3fff700 (LWP 32868) exited]
[Thread 0x7fffca018700 (LWP 32869) exited]
[Thread 0x7fffc8fd1700 (LWP 32870) exited]
[Thread 0x7fffde78a700 (LWP 32838) exited]
[Thread 0x7fffdcf87700 (LWP 32841) exited]
[Thread 0x7fffdd788700 (LWP 32840) exited]
[Thread 0x7fffed2ff700 (LWP 32830) exited]
Thread 1 "gnome-calendar" received signal SIGSEGV, Segmentation fault.
g_str_hash (v=0x0) at ../glib/ghash.c:2324
2324 for (p = v; *p != '\0'; p++)
Missing separate debuginfos, use: dnf debuginfo-install GConf2-3.2.6-27.fc31.x86_64 at-spi2-atk-2.33.91-1.fc31.x86_64 at-spi2-core-2.33.90-1.fc31.x86_64 atk-2.33.3-2.fc31.x86_64 brotli-1.0.7-6.fc31.x86_64 bzip2-libs-1.0.8-1.fc31.x86_64 cairo-1.16.0-6.fc31.x86_64 cairo-gobject-1.16.0-6.fc31.x86_64 cyrus-sasl-lib-2.1.27-2.fc31.x86_64 dbus-glib-0.110-6.fc31.x86_64 dbus-libs-1.12.16-3.fc31.x86_64 enchant2-2.2.5-2.fc31.x86_64 evolution-data-server-3.33.91-1.fc31.x86_64 expat-2.2.7-2.fc31.x86_64 freetype-2.10.0-3.fc31.x86_64 fribidi-1.0.5-4.fc31.x86_64 gcr-3.33.4-1.fc31.x86_64 gcr-base-3.33.4-1.fc31.x86_64 gdk-pixbuf2-2.39.2-1.fc31.x86_64 geoclue2-libs-2.5.3-2.fc31.x86_64 geocode-glib-3.26.1-3.fc31.x86_64 gnome-online-accounts-3.33.91-1.fc31.x86_64 graphite2-1.3.13-1.fc31.x86_64 gstreamer1-1.16.0-2.fc31.x86_64 gstreamer1-plugins-base-1.16.0-2.fc31.x86_64 gtk3-3.24.10-2.fc31.x86_64 harfbuzz-2.6.0-1.fc31.x86_64 harfbuzz-icu-2.6.0-1.fc31.x86_64 json-glib-1.4.4-3.fc31.x86_64 keyutils-libs-1.6-3.fc31.x86_64 libX11-1.6.8-3.fc31.x86_64 libX11-xcb-1.6.8-3.fc31.x86_64 libXau-1.0.9-2.fc31.x86_64 libXcomposite-0.4.4-17.fc31.x86_64 libXcursor-1.1.15-6.fc31.x86_64 libXdamage-1.1.4-17.fc31.x86_64 libXext-1.3.4-2.fc31.x86_64 libXfixes-5.0.3-10.fc31.x86_64 libXi-1.7.10-2.fc31.x86_64 libXinerama-1.1.4-4.fc31.x86_64 libXrandr-1.5.2-2.fc31.x86_64 libXrender-0.9.10-10.fc31.x86_64 libdatrie-0.2.9-10.fc31.x86_64 libdazzle-3.33.90-1.fc31.x86_64 libepoxy-1.5.3-4.fc31.x86_64 libffi-3.1-23.fc31.x86_64 libgcc-9.1.1-2.fc31.1.x86_64 libglvnd-1.1.1-5.fc31.x86_64 libglvnd-egl-1.1.1-5.fc31.x86_64 libglvnd-glx-1.1.1-5.fc31.x86_64 libgpg-error-1.36-2.fc31.x86_64 libgweather-3.33.0-2.fc31.x86_64 libicu-63.2-3.fc31.x86_64 libidn2-2.2.0-2.fc31.x86_64 libjpeg-turbo-2.0.2-4.fc31.x86_64 libmount-2.34-2.fc31.x86_64 libnghttp2-1.39.2-1.fc31.x86_64 libnotify-0.7.8-3.fc31.x86_64 liboauth-1.0.3-13.fc31.x86_64 libpng-1.6.37-2.fc31.x86_64 libpsl-0.21.0-2.fc31.x86_64 libseccomp-2.4.1-1.fc31.x86_64 libselinux-2.9-5.fc31.x86_64 libsoup-2.67.92-1.fc31.x86_64 libstdc++-9.1.1-2.fc31.1.x86_64 libtasn1-4.14-2.fc31.x86_64 libunistring-0.9.10-6.fc31.x86_64 libwayland-client-1.17.0-2.fc31.x86_64 libwayland-cursor-1.17.0-2.fc31.x86_64 libwayland-egl-1.17.0-2.fc31.x86_64 libwebp-1.0.3-2.fc31.x86_64 libxcb-1.13.1-3.fc31.x86_64 libxkbcommon-0.8.4-2.fc31.x86_64 libxslt-1.1.33-2.fc31.x86_64 nspr-4.21.0-2.fc31.x86_64 nss-3.44.1-2.fc31.x86_64 p11-kit-0.23.16.1-2.fc31.x86_64 pango-1.44.5-1.fc31.x86_64 pixman-0.38.0-2.fc31.x86_64 systemd-libs-243-1.fc31.x86_64 webkit2gtk3-2.25.4-1.fc31.x86_64 webkit2gtk3-jsc-2.25.4-1.fc31.x86_64 xz-libs-5.2.4-6.fc31.x86_64 zlib-1.2.11-18.fc31.x86_64
(gdb) thread apply all bt
Thread 12 (Thread 0x7fffca819700 (LWP 32843)):
#0 0x00007ffff30cd4d4 in icalparser_string_line_generator (out=0x7fffac02bc10 "", buf_size=80, d=0x7fffca817d50) at /usr/src/debug/libical-3.0.5-2.fc31.x86_64/src/libical/icalparser.c:1290
#1 0x00007ffff30cd928 in icalparser_get_line (parser=parser@entry=0x7fffac02bc00, line_gen_func=line_gen_func@entry=0x7ffff30cd4c0 <icalparser_string_line_generator>) at /usr/src/debug/libical-3.0.5-2.fc31.x86_64/src/libical/icalparser.c:541
#2 0x00007ffff30ce7c7 in icalparser_parse (parser=parser@entry=0x7fffac02bc00, line_gen_func=line_gen_func@entry=0x7ffff30cd4c0 <icalparser_string_line_generator>) at /usr/src/debug/libical-3.0.5-2.fc31.x86_64/src/libical/icalparser.c:683
#3 0x00007ffff30ce92b in icalparser_parse_string (str=<optimized out>) at /usr/src/debug/libical-3.0.5-2.fc31.x86_64/src/libical/icalparser.c:1355
#4 0x00007ffff7529c02 in i_cal_component_new_from_string () at /lib64/libical-glib.so.3
#5 0x00007ffff7594b25 in build_object_list () at /lib64/libecal-2.0.so.1
#6 0x00007ffff7594c81 in cal_client_view_objects_added_cb () at /lib64/libecal-2.0.so.1
#7 0x00007ffff2469aa8 in ffi_call_unix64 () at /lib64/libffi.so.6
#8 0x00007ffff24692a4 in ffi_call () at /lib64/libffi.so.6
#12 0x00007ffff71913ba in Python Exception <class 'gdb.error'> There is no member named v_pointer.:
#13 0x00007ffff3068bd5 in e_dbus_calendar_view_proxy_g_signal () at /usr/lib64/evolution-data-server/libedbus-private.so
#17 0x00007ffff7192933 in <emit signal ??? on instance 0x5555568a3d60 [EDBusCalendarViewProxy]> (instance=instance@entry=0x5555568a3d60, signal_id=<optimized out>, detail=detail@entry=0) at ../gobject/gsignal.c:3453
#14 0x00007ffff7175742 in g_closure_invoke (closure=0x55555561e300, return_value=0x0, n_param_values=4, param_values=0x7fffca818500, invocation_hint=0x7fffca818480) at ../gobject/gclosure.c:810
#15 0x00007ffff7188d54 in signal_emit_unlocked_R (node=node@entry=0x555555629280, detail=detail@entry=0, instance=instance@entry=0x5555568a3d60, emission_return=emission_return@entry=0x0, instance_and_params=instance_and_params@entry=0x7fffca818500) at ../gobject/gsignal.c:3679
#16 0x00007ffff719230e in g_signal_emit_valist (instance=<optimized out>, signal_id=<optimized out>, detail=<optimized out>, var_args=var_args@entry=0x7fffca818710) at ../gobject/gsignal.c:3397
#18 0x00007ffff72d5758 in on_signal_received (connection=<optimized out>, sender_name=0x7fffe4055580 ":1.76", object_path=<optimized out>, interface_name=<optimized out>, signal_name=0x7fffe4035200 "ObjectsAdded", parameters=0x5555568d4590, user_data=0x555555c98660) at ../gio/gdbusproxy.c:924
#19 0x00007ffff72c4258 in emit_signal_instance_in_idle_cb (data=data@entry=0x7fffe4043b40) at ../gio/gdbusconnection.c:3747
#20 0x00007ffff7086d9b in g_idle_dispatch (source=source@entry=0x7fffe40383d0, callback=0x7ffff72c41e0 <emit_signal_instance_in_idle_cb>, user_data=0x7fffe4043b40) at ../glib/gmain.c:5617
#21 0x00007ffff708a470 in g_main_dispatch (context=0x7fffb4005720) at ../glib/gmain.c:3179
#22 g_main_context_dispatch (context=context@entry=0x7fffb4005720) at ../glib/gmain.c:3844
#23 0x00007ffff708a800 in g_main_context_iterate (context=0x7fffb4005720, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/gmain.c:3917
#24 0x00007ffff708aaf3 in g_main_loop_run (loop=0x7fffac001360) at ../glib/gmain.c:4111
#25 0x00007ffff7589ed8 in cal_client_dbus_thread () at /lib64/libecal-2.0.so.1
#26 0x00007ffff70b3db2 in g_thread_proxy (data=0x7fffc0002190) at ../glib/gthread.c:805
#27 0x00007ffff33074e2 in start_thread (arg=<optimized out>) at pthread_create.c:479
#28 0x00007ffff6c7c333 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
Thread 11 (Thread 0x7fffcb01a700 (LWP 32842)):
#0 syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
#1 0x00007ffff70d6a46 in g_cond_wait_until (cond=0x55555582c160, mutex=0x55555582c170, end_time=<optimized out>) at ../glib/gthread-posix.c:1463
#2 0x00007ffff7472cae in e_flag_wait_until () at /lib64/libedataserver-1.2.so.24
#3 0x00007ffff746ecef in e_client_wait_for_connected_sync () at /lib64/libedataserver-1.2.so.24
#4 0x00007ffff758e2bc in e_cal_client_connect_sync () at /lib64/libecal-2.0.so.1
#5 0x000055555558f2cb in gcal_calendar_initable_init (initable=0x5555558d6890, cancellable=0x0, error=0x7fffcb019940) at ../src/core/gcal-calendar.c:190
#6 0x00007ffff720c29c in async_init_thread (task=0x5555559009a0 [GTask], source_object=0x5555558d6890, task_data=<optimized out>, cancellable=0x0) at ../gio/gasyncinitable.c:260
#7 0x00007ffff7270e02 in g_task_thread_pool_thread (thread_data=0x5555559009a0, pool_data=<optimized out>) at ../gio/gtask.c:1410
#8 0x00007ffff70b44f4 in g_thread_pool_thread_proxy (data=<optimized out>) at ../glib/gthreadpool.c:308
#9 0x00007ffff70b3db2 in g_thread_proxy (data=0x5555557eecf0) at ../glib/gthread.c:805
#10 0x00007ffff33074e2 in start_thread (arg=<optimized out>) at pthread_create.c:479
#11 0x00007ffff6c7c333 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
Thread 8 (Thread 0x7fffddf89700 (LWP 32839)):
#0 syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
#1 0x00007ffff70d6a46 in g_cond_wait_until (cond=cond@entry=0x555555622ec8, mutex=mutex@entry=0x555555622ec0, end_time=end_time@entry=39379977304) at ../glib/gthread-posix.c:1463
#2 0x00007ffff705b411 in g_async_queue_pop_intern_unlocked (queue=queue@entry=0x555555622ec0, wait=wait@entry=1, end_time=end_time@entry=39379977304) at ../glib/gasyncqueue.c:422
#3 0x00007ffff705ba36 in g_async_queue_timeout_pop (queue=0x555555622ec0, timeout=timeout@entry=15000000) at ../glib/gasyncqueue.c:545
#4 0x00007ffff70b4599 in g_thread_pool_wait_for_new_pool () at ../glib/gthreadpool.c:168
#5 g_thread_pool_thread_proxy (data=<optimized out>) at ../glib/gthreadpool.c:365
#6 0x00007ffff70b3db2 in g_thread_proxy (data=0x5555557eed90) at ../glib/gthread.c:805
#7 0x00007ffff33074e2 in start_thread (arg=<optimized out>) at pthread_create.c:479
#8 0x00007ffff6c7c333 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
Thread 6 (Thread 0x7fffdf7fe700 (LWP 32837)):
#0 0x00007ffff6c7179f in __GI___poll (fds=0x7fffc4080240, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
#1 0x00007ffff708a76e in g_main_context_poll (priority=<optimized out>, n_fds=1, fds=0x7fffc4080240, timeout=<optimized out>, context=0x555555762830) at ../glib/gmain.c:4216
#2 g_main_context_iterate (context=0x555555762830, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/gmain.c:3912
#3 0x00007ffff708aaf3 in g_main_loop_run (loop=0x5555557a6d90) at ../glib/gmain.c:4111
#4 0x00007ffff74a4f9f in source_registry_object_manager_thread () at /lib64/libedataserver-1.2.so.24
#5 0x00007ffff70b3db2 in g_thread_proxy (data=0x5555557342d0) at ../glib/gthread.c:805
#6 0x00007ffff33074e2 in start_thread (arg=<optimized out>) at pthread_create.c:479
#7 0x00007ffff6c7c333 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
Thread 5 (Thread 0x7fffdffff700 (LWP 32832)):
#0 0x00007ffff6c7179f in __GI___poll (fds=0x55555565b6d0, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
#1 0x00007ffff708a76e in g_main_context_poll (priority=<optimized out>, n_fds=1, fds=0x55555565b6d0, timeout=<optimized out>, context=0x55555565d290) at ../glib/gmain.c:4216
#2 g_main_context_iterate (context=context@entry=0x55555565d290, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/gmain.c:3912
#3 0x00007ffff708a8a3 in g_main_context_iteration (context=0x55555565d290, may_block=1) at ../glib/gmain.c:3978
#4 0x00007ffff7fbf93d in dconf_gdbus_worker_thread () at /usr/lib64/gio/modules/libdconfsettings.so
#5 0x00007ffff70b3db2 in g_thread_proxy (data=0x55555565cc50) at ../glib/gthread.c:805
#6 0x00007ffff33074e2 in start_thread (arg=<optimized out>) at pthread_create.c:479
#7 0x00007ffff6c7c333 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
Thread 4 (Thread 0x7fffecafe700 (LWP 32831)):
#0 0x00007ffff6c7179f in __GI___poll (fds=0x7fffe4057d80, nfds=7, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
#1 0x00007ffff708a76e in g_main_context_poll (priority=<optimized out>, n_fds=7, fds=0x7fffe4057d80, timeout=<optimized out>, context=0x555555635a30) at ../glib/gmain.c:4216
#2 g_main_context_iterate (context=0x555555635a30, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/gmain.c:3912
#3 0x00007ffff708aaf3 in g_main_loop_run (loop=0x555555635b20) at ../glib/gmain.c:4111
#4 0x00007ffff72d96ba in gdbus_shared_thread_func (user_data=0x555555635a00) at ../gio/gdbusprivate.c:279
#5 0x00007ffff70b3db2 in g_thread_proxy (data=0x55555561ea80) at ../glib/gthread.c:805
#6 0x00007ffff33074e2 in start_thread (arg=<optimized out>) at pthread_create.c:479
#7 0x00007ffff6c7c333 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
Thread 2 (Thread 0x7fffedb00700 (LWP 32829)):
#0 0x00007ffff6c7179f in __GI___poll (fds=0x5555556230d0, nfds=2, timeout=5560) at ../sysdeps/unix/sysv/linux/poll.c:29
#1 0x00007ffff708a76e in g_main_context_poll (priority=<optimized out>, n_fds=2, fds=0x5555556230d0, timeout=<optimized out>, context=0x555555624a20) at ../glib/gmain.c:4216
#2 g_main_context_iterate (context=context@entry=0x555555624a20, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/gmain.c:3912
#3 0x00007ffff708a8a3 in g_main_context_iteration (context=0x555555624a20, may_block=may_block@entry=1) at ../glib/gmain.c:3978
#4 0x00007ffff708a8f1 in glib_worker_main (data=<optimized out>) at ../glib/gmain.c:5858
#5 0x00007ffff70b3db2 in g_thread_proxy (data=0x55555561e990) at ../glib/gthread.c:805
#6 0x00007ffff33074e2 in start_thread (arg=<optimized out>) at pthread_create.c:479
#7 0x00007ffff6c7c333 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
Thread 1 (Thread 0x7fffedb06c80 (LWP 32825)):
#0 g_str_hash (v=0x0) at ../glib/ghash.c:2324
#1 0x00007ffff7077d73 in g_hash_table_lookup_node (hash_return=<synthetic pointer>, key=0x0, hash_table=0x5555555e9d80) at ../glib/ghash.c:473
#2 g_hash_table_remove_internal (hash_table=0x5555555e9d80, key=0x0, notify=1) at ../glib/ghash.c:1734
#3 0x0000555555590ed3 in gcal_event_update_uid_internal (self=self@entry=0x555556776b60 [GcalEvent]) at ../src/core/gcal-event.c:269
#4 0x00005555555925c1 in gcal_event_set_component_internal (component=0x555555927e70 [ECalComponent], self=0x555556776b60 [GcalEvent]) at ../src/core/gcal-event.c:422
#5 gcal_event_set_component_internal (self=0x555556776b60 [GcalEvent], component=0x555555927e70 [ECalComponent]) at ../src/core/gcal-event.c:324
#6 0x00007ffff717b73c in object_set_property (nqueue=0x5555567a0ea0, value=<optimized out>, pspec=0x55555673ae50 [GParamObject], object=0x555556776b60 [GcalEvent]) at ../gobject/gobject.c:1469
#7 g_object_new_internal (class=class@entry=0x5555556cbb00, params=params@entry=0x7fffffffd060, n_params=n_params@entry=2) at ../gobject/gobject.c:1861
#8 0x00007ffff717d308 in g_object_new_valist (object_type=object_type@entry=0x555555b791a0 [GcalEvent], first_property_name=first_property_name@entry=0x5555555bf05f "calendar", var_args=var_args@entry=0x7fffffffd1f0) at ../gobject/gobject.c:2152
#9 0x00007ffff7239c1e in g_initable_new_valist (object_type=0x555555b791a0 [GcalEvent], first_property_name=0x5555555bf05f "calendar", var_args=0x7fffffffd1f0, cancellable=0x0, error=0x7fffffffd310) at ../gio/ginitable.c:244
#10 0x00007ffff7239ced in g_initable_new (object_type=<optimized out>, cancellable=cancellable@entry=0x0, error=error@entry=0x7fffffffd310, first_property_name=first_property_name@entry=0x5555555bf05f "calendar") at ../gio/ginitable.c:162
#11 0x00005555555928c9 in gcal_event_new (calendar=0x5555558d6910 [GcalCalendar], component=component@entry=0x555555927e70 [ECalComponent], error=error@entry=0x7fffffffd310) at ../src/core/gcal-event.c:824
#12 0x000055555558b244 in gcal_year_view_component_added (subscriber=0x55555596a3e0, client=<optimized out>, comp=0x555555927e70 [ECalComponent]) at ../src/views/gcal-year-view.c:1903
#13 0x00005555555b2982 in cal_data_model_foreach_subscriber_in_range (data_model=0x5555557a8c00 [ECalDataModel], client=0x7fffb00029f0 [ECalClient], in_range_start=1562198400, in_range_end=1562284799, func=0x5555555b3ec0 <cal_data_model_add_component_cb>, user_data=0x555555927e70) at ../contrib/evolution/e-cal-data-model.c:640
#14 0x00005555555b349c in cal_data_model_process_added_component (data_model=data_model@entry=0x5555557a8c00 [ECalDataModel], view_data=view_data@entry=0x555556a084c0, comp_data=0x555556ac1420, known_instances=known_instances@entry=0x0) at ../contrib/evolution/e-cal-data-model.c:940
#15 0x00005555555b581b in cal_data_model_process_modified_or_added_objects (view=<optimized out>, objects=<optimized out>, data_model=0x5555557a8c00 [ECalDataModel], is_add=<optimized out>) at ../contrib/evolution/e-cal-data-model.c:1406
#16 0x00007ffff7178cf3 in g_cclosure_marshal_VOID__POINTERv (closure=<optimized out>, return_value=<optimized out>, instance=<optimized out>, args=<optimized out>, marshal_data=<optimized out>, n_params=<optimized out>, param_types=0x7fffac017b50) at ../gobject/gmarshal.c:1800
#17 0x00007ffff7175996 in _g_closure_invoke_va (closure=0x7fffa4007210, return_value=0x0, instance=0x7fffac027390, args=0x7fffffffd740, n_params=1, param_types=0x7fffac017b50) at ../gobject/gclosure.c:873
#18 0x00007ffff7192188 in g_signal_emit_valist (instance=0x7fffac027390, signal_id=<optimized out>, detail=0, var_args=var_args@entry=0x7fffffffd740) at ../gobject/gsignal.c:3306
#19 0x00007ffff7192933 in g_signal_emit (instance=<optimized out>, signal_id=<optimized out>, detail=<optimized out>) at ../gobject/gsignal.c:3453
#20 0x00007ffff75947a0 in cal_client_view_emit_objects_added_idle_cb () at /lib64/libecal-2.0.so.1
#21 0x00007ffff7086d9b in g_idle_dispatch (source=source@entry=0x7fffac04bf60, callback=0x7ffff7594770 <cal_client_view_emit_objects_added_idle_cb>, user_data=0x7fffe0002d30) at ../glib/gmain.c:5617
#22 0x00007ffff708a470 in g_main_dispatch (context=0x55555562a710) at ../glib/gmain.c:3179
#23 g_main_context_dispatch (context=context@entry=0x55555562a710) at ../glib/gmain.c:3844
#24 0x00007ffff708a800 in g_main_context_iterate (context=context@entry=0x55555562a710, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/gmain.c:3917
#25 0x00007ffff708a8a3 in g_main_context_iteration (context=context@entry=0x55555562a710, may_block=may_block@entry=1) at ../glib/gmain.c:3978
#26 0x00007ffff729dc65 in g_application_run (application=0x5555556181e0 [GcalApplication], argc=<optimized out>, argv=<optimized out>) at ../gio/gapplication.c:2557
#27 0x0000555555578f22 in main (argc=1, argv=0x7fffffffdac8) at ../src/main.c:40
```GNOME 3.34Michael CatanzaroMichael Catanzarohttps://gitlab.gnome.org/GNOME/gnome-calendar/-/issues/423Recommend auditing all use of g_signal_connect()2019-09-14T23:33:30ZMichael CatanzaroRecommend auditing all use of g_signal_connect()I spent most of yesterday and today looking over a bunch of gnome-calendar crash reports. One commonality is that there are several very similar mistakes with signal use:
* Failure to disconnect a signal handler from an object foo when...I spent most of yesterday and today looking over a bunch of gnome-calendar crash reports. One commonality is that there are several very similar mistakes with signal use:
* Failure to disconnect a signal handler from an object foo when the self object is destroyed. The foo outlives self and emits the signal, then the signal handler crashes because it's not prepared for self to already be destroyed. The best way to avoid this problem is to use g_signal_connect_object() (possibly with G_CONNECT_SWAPPED if desired), but disconnecting manually in dispose works fine too.
* Failure to disconnect the signal handler from a priv member when overwriting the priv member with another object. The signal handers must be disconnected manually.
Often both of these errors occur at the same time. Both errors are present in !73, !74, !75, !77, and !80. Each of those merge requests is a good example of how to fix both of these problems.
I have not audited gnome-calendar's code to check for more of these mistakes: I've just been looking at actual crash reports that have been piling up on Red Hat Bugzilla. I recommend reviewing every use of g_signal_connect* in gnome-calendar, as this seems highly likely to reveal more similar crashers. A quick count with 'git grep' reveals there about 90 of these to audit.GNOME 3.34Michael CatanzaroMichael Catanzarohttps://gitlab.gnome.org/GNOME/gnome-calendar/-/issues/421Huge warning spam when starting calendar, including: "gsignal.c:2647: instanc...2019-11-08T17:51:46ZMichael CatanzaroHuge warning spam when starting calendar, including: "gsignal.c:2647: instance '0x198ac60' has no handler with id '262'"I see a huge warning spam when starting gnome-calendar git master:
```
$ jhbuild run gnome-calendar
(gnome-calendar:71138): dzl-menu-manager-WARNING **: 12:10:32.552: Link of type "section" missing "id=". Merging will not be possible.
...I see a huge warning spam when starting gnome-calendar git master:
```
$ jhbuild run gnome-calendar
(gnome-calendar:71138): dzl-menu-manager-WARNING **: 12:10:32.552: Link of type "section" missing "id=". Merging will not be possible.
(gnome-calendar:71138): GcalManager-WARNING **: 12:10:33.338: Failed to open/connect to calendar: Unable to connect to “Birthdays & Anniversaries”: The name is not activatable
(gnome-calendar:71138): GLib-GObject-WARNING **: 12:10:33.338: ../../../../Projects/glib/gobject/gsignal.c:2647: instance '0x198ac60' has no handler with id '262'
(gnome-calendar:71138): GcalManager-WARNING **: 12:10:33.339: Failed to open/connect to calendar: Unable to connect to “Personal”: The name is not activatable
(gnome-calendar:71138): GLib-GObject-WARNING **: 12:10:33.339: ../../../../Projects/glib/gobject/gsignal.c:2647: instance '0x198ad60' has no handler with id '268'
(gnome-calendar:71138): GcalManager-WARNING **: 12:10:33.339: Failed to open/connect to calendar: Unable to connect to “GNOME 3.34”: The name is not activatable
(gnome-calendar:71138): GLib-GObject-WARNING **: 12:10:33.339: ../../../../Projects/glib/gobject/gsignal.c:2647: instance '0x198ace0' has no handler with id '265'
```
The e-d-s issues might be related to my host running e-d-s 3.32 instead of 3.33 that gnome-calendar is probably expecting. But at least the gsignal issues are serious and need fixed. I would use G_DEBUG=fatal-warnings to get a backtrace to those, but first the warnings that appear first would need to be solved, and I've fixed enough crashes just now that I don't plan to help with those, sorry.GNOME 3.34Michael CatanzaroMichael Catanzaro