Bug 456157

Summary: Crash on dismissing a reminder
Product: [Applications] Merkuro Reporter: Mathias Homann <Mathias.Homann>
Component: generalAssignee: Claudio Cambra <claudio.cambra>
Status: RESOLVED FIXED    
Severity: crash CC: asn, carl, ddygulski, dschridde+kde, Mathias.Homann
Priority: NOR Keywords: drkonqi
Version: unspecified   
Target Milestone: ---   
Platform: openSUSE   
OS: Linux   
Latest Commit: Version Fixed In:
Attachments: New crash information added by DrKonqi
New crash information added by DrKonqi
New crash information added by DrKonqi
New crash information added by DrKonqi
New crash information added by DrKonqi

Description Mathias Homann 2022-06-30 07:55:08 UTC
Application: kalendarac (5.20.2)

Qt Version: 5.15.2
Frameworks Version: 5.95.0
Operating System: Linux 5.18.6-1-default x86_64
Windowing System: X11
Distribution: "openSUSE Tumbleweed"
DrKonqi: 5.25.1 [KCrashBackend]

-- Information about the crash:
The reminder app crashed when I dismissed a reminder that I already had dismissed on a different device (calendar event is in a webdav calendar)

The reporter is unsure if this crash is reproducible.

-- Backtrace:
Application: Erinnerungen (kalendarac), signal: Segmentation fault

[KCrash Handler]
#4  _mm_packus_epi16(long long __vector(2), long long __vector(2)) (__B=<error reading variable: Cannot access memory at address 0x55bceb11e9fb>, __A=<error reading variable: Cannot access memory at address 0x55bceb11e9eb>) at /usr/lib64/gcc/x86_64-suse-linux/12/include/emmintrin.h:1000
#5  simdEncodeAscii (end=<optimized out>, src=<optimized out>, nextAscii=<optimized out>, dst=<optimized out>) at codecs/qutfcodec.cpp:90
#6  QUtf8::convertFromUnicode (uc=<optimized out>, len=32570) at codecs/qutfcodec.cpp:383
#7  0x00007f3b0d37bc75 in qt_convert_to_utf8 (str=...) at text/qstring.cpp:5376
#8  QString::toUtf8_helper (str=...) at text/qstring.cpp:5368
#9  0x00007f3b0e0adeeb in QString::toUtf8() const & (this=<optimized out>) at /usr/include/qt5/QtCore/qstring.h:684
#10 KConfigBase::isGroupImmutable (this=0x7ffd8fb599c0, aGroup=...) at /usr/src/debug/kconfig-5.95.0-1.1.x86_64/src/core/kconfigbase.cpp:83
#11 0x00007f3b0e0b6ddf in KConfigGroup::KConfigGroup (this=<optimized out>, master=<optimized out>, _group=..., this=<optimized out>, master=<optimized out>, _group=...) at /usr/src/debug/kconfig-5.95.0-1.1.x86_64/src/core/kconfiggroup.cpp:471
#12 0x000055bc6df9eaf5 in KalendarAlarmClient::removeNotification (this=0x7ffd8fb5a4f0, notification=0x55bc6f122910) at /usr/src/debug/akonadi-calendar-22.04.2-1.1.x86_64/reminder-daemon/kalendaralarmclient.cpp:181
#13 KalendarAlarmClient::dismiss (this=0x7ffd8fb5a4f0, notification=0x55bc6f122910) at /usr/src/debug/akonadi-calendar-22.04.2-1.1.x86_64/reminder-daemon/kalendaralarmclient.cpp:118
#14 0x00007f3b0d512b3f in QtPrivate::QSlotObjectBase::call (a=0x7ffd8fb59ab0, r=0x7ffd8fb5a4f0, this=0x55bc6f30c8b0) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:398
#15 doActivate<false> (sender=0x55bc6f30ca10, signal_index=9, argv=0x7ffd8fb59ab0) at kernel/qobject.cpp:3886
#16 0x00007f3b0d50beff in QMetaObject::activate (sender=sender@entry=0x55bc6f30ca10, m=m@entry=0x7f3b0e5a76a0, local_signal_index=local_signal_index@entry=6, argv=argv@entry=0x0) at kernel/qobject.cpp:3946
#17 0x00007f3b0e56f903 in KNotification::closed (this=this@entry=0x55bc6f30ca10) at /usr/src/debug/knotifications-5.95.0-1.1.x86_64/build/src/KF5Notifications_autogen/EWIEGA46WW/moc_knotification.cpp:582
#18 0x00007f3b0e572817 in KNotification::textChanged (this=0x55bc6f30ca10) at /usr/src/debug/knotifications-5.95.0-1.1.x86_64/src/knotification.cpp:358
#19 0x00007f3b0d512b3f in QtPrivate::QSlotObjectBase::call (a=0x7ffd8fb59be0, r=0x7f3b0e5a9060 <(anonymous namespace)::Q_QGS_s_self::innerFunction()::holder>, this=0x55bc6f318c80) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:398
#20 doActivate<false> (sender=0x55bc6f318460, signal_index=3, argv=0x7ffd8fb59be0) at kernel/qobject.cpp:3886
#21 0x00007f3b0d50beff in QMetaObject::activate (sender=<optimized out>, m=m@entry=0x7f3b0e5a7620 <KNotificationPlugin::staticMetaObject>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7ffd8fb59be0) at kernel/qobject.cpp:3946
#22 0x00007f3b0e56faef in KNotificationPlugin::finished (this=<optimized out>, _t1=<optimized out>) at /usr/src/debug/knotifications-5.95.0-1.1.x86_64/build/src/KF5Notifications_autogen/EWIEGA46WW/moc_knotificationplugin.cpp:173
#23 0x00007f3b0e586891 in NotifyByPopup::onNotificationClosed (this=0x55bc6f318460, dbus_id=<optimized out>, reason=3) at /usr/src/debug/knotifications-5.95.0-1.1.x86_64/src/notifybypopup.cpp:150
#24 0x00007f3b0d512b3f in QtPrivate::QSlotObjectBase::call (a=0x7ffd8fb59db0, r=0x55bc6f318460, this=0x55bc6f325950) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:398
#25 doActivate<false> (sender=0x55bc6f318498, signal_index=5, argv=0x7ffd8fb59db0) at kernel/qobject.cpp:3886
#26 0x00007f3b0d50beff in QMetaObject::activate (sender=<optimized out>, m=<optimized out>, local_signal_index=local_signal_index@entry=2, argv=argv@entry=0x7ffd8fb59db0) at kernel/qobject.cpp:3946
#27 0x00007f3b0e592599 in OrgFreedesktopNotificationsInterface::NotificationClosed (_t2=<optimized out>, _t1=<optimized out>, this=<optimized out>) at /usr/src/debug/knotifications-5.95.0-1.1.x86_64/build/src/notifications_interface.moc:287
#28 OrgFreedesktopNotificationsInterface::qt_static_metacall (_o=_o@entry=0x55bc6f318498, _c=_c@entry=QMetaObject::InvokeMetaMethod, _id=_id@entry=2, _a=_a@entry=0x7ffd8fb59f00) at /usr/src/debug/knotifications-5.95.0-1.1.x86_64/build/src/notifications_interface.moc:148
#29 0x00007f3b0e592f83 in OrgFreedesktopNotificationsInterface::qt_metacall (this=0x55bc6f318498, _c=QMetaObject::InvokeMetaMethod, _id=2, _a=0x7ffd8fb59f00) at /usr/src/debug/knotifications-5.95.0-1.1.x86_64/build/src/notifications_interface.moc:242
#30 0x00007f3b0e01b65b in QDBusConnectionPrivate::deliverCall (this=<optimized out>, object=<optimized out>, msg=..., metaTypes=..., slotIdx=<optimized out>) at ../../include/QtCore/../../src/corelib/tools/qvarlengtharray.h:189
#31 0x00007f3b0d507490 in QObject::event (this=0x55bc6f318498, e=0x7f3af801fa60) at kernel/qobject.cpp:1314
#32 0x00007f3b0d4dbce8 in QCoreApplication::notifyInternal2 (receiver=0x55bc6f318498, event=0x7f3af801fa60) at kernel/qcoreapplication.cpp:1064
#33 0x00007f3b0d4dec81 in QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x55bc6ef604c0) at kernel/qcoreapplication.cpp:1821
#34 0x00007f3b0d533903 in postEventSourceDispatch (s=0x55bc6f0b4110) at kernel/qeventdispatcher_glib.cpp:277
#35 0x00007f3b0afbfea0 in g_main_context_dispatch () from /lib64/libglib-2.0.so.0
#36 0x00007f3b0afc0258 in ?? () from /lib64/libglib-2.0.so.0
#37 0x00007f3b0afc02ec in g_main_context_iteration () from /lib64/libglib-2.0.so.0
#38 0x00007f3b0d533106 in QEventDispatcherGlib::processEvents (this=0x55bc6f0b0b60, flags=...) at kernel/qeventdispatcher_glib.cpp:423
#39 0x00007f3b0d4da75b in QEventLoop::exec (this=this@entry=0x7ffd8fb5a310, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:69
#40 0x00007f3b0d4e28c6 in QCoreApplication::exec () at ../../include/QtCore/../../src/corelib/global/qflags.h:121
#41 0x000055bc6df9c4d5 in main (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/akonadi-calendar-22.04.2-1.1.x86_64/reminder-daemon/kalendaracmain.cpp:54
[Inferior 1 (process 3101) detached]

Reported using DrKonqi
Comment 1 Andreas Schneider 2022-07-05 11:39:43 UTC
I'm running into exactly the same issue ...
Comment 3 Mathias Homann 2022-07-13 05:55:14 UTC
Created attachment 150576 [details]
New crash information added by DrKonqi

kalendarac (5.20.3) using Qt 5.15.5

reminder crashes when dismissing a notification.

-- Backtrace (Reduced):
#4  _mm_packus_epi16(long long __vector(2), long long __vector(2)) (__B=<error reading variable: Cannot access memory at address 0x558493ce7d6b>, __A=<error reading variable: Cannot access memory at address 0x558493ce7d5b>) at /usr/lib64/gcc/x86_64-suse-linux/12/include/emmintrin.h:1000
#5  simdEncodeAscii (end=<optimized out>, src=<optimized out>, nextAscii=<optimized out>, dst=<optimized out>) at codecs/qutfcodec.cpp:90
#6  QUtf8::convertFromUnicode (uc=<optimized out>, len=21892) at codecs/qutfcodec.cpp:383
#7  0x00007f791997bd95 in qt_convert_to_utf8 (str=...) at text/qstring.cpp:5380
#8  QString::toUtf8_helper (str=...) at text/qstring.cpp:5372
Comment 4 Dennis Schridde 2022-07-16 09:05:36 UTC
Created attachment 150668 [details]
New crash information added by DrKonqi

kalendarac (5.20.3) using Qt 5.15.5

1. I log into my account / KDE Plasma
2. Calendar reminder notifications pop up
3. I click dismiss on all of them
4. The last notification in the list is by DrKonqi, telling me that kalendarac has crashed
5. I click to restart the application
6. Most of the previously dismissed notifications appear again
7. Clicking dismiss on them does not appear to result in a crash

-- Backtrace (Reduced):
#4  0x00007f81d34aa910 in QUtf8::convertFromUnicode(QChar const*, int) () from /usr/lib64/libQt5Core.so.5
#5  0x00007f81d33219d6 in QString::toUtf8_helper(QString const&) () from /usr/lib64/libQt5Core.so.5
#6  0x00007f81d3de1e8b in KConfigBase::isGroupImmutable(QString const&) const () from /usr/lib64/libKF5ConfigCore.so.5
#7  0x00007f81d3de9976 in KConfigGroup::KConfigGroup(KConfigBase*, QString const&) () from /usr/lib64/libKF5ConfigCore.so.5
#8  0x000055ae75b88860 in KalendarAlarmClient::removeNotification(AlarmNotification*) ()
Comment 5 Dennis Schridde 2022-07-21 08:59:37 UTC
(In reply to Carl Schwan from comment #2)
> Should be fixed with
> https://invent.kde.org/pim/akonadi-calendar/-/merge_requests/30 and
> https://invent.kde.org/pim/akonadi-calendar/-/merge_requests/29

I can confirm that the problem is fixed for me.

Operating System: Gentoo Linux 2.8
KDE Plasma Version: 5.25.3
KDE Frameworks Version: 5.96.0
Qt Version: 5.15.5
Kernel Version: 5.18.12-gentoo-dist (64-bit)
Graphics Platform: Wayland
Processors: 8 × AMD Ryzen 5 2400G with Radeon Vega Graphics
Memory: 13,5 GiB of RAM
Graphics Processor: AMD Radeon Vega 11 Graphics
Comment 6 Dennis Schridde 2022-07-21 16:24:01 UTC
Created attachment 150795 [details]
New crash information added by DrKonqi

kalendarac (5.20.3) using Qt 5.15.5

The bug does still happen, but apparently it is not reproducible every time I log in.

-- Backtrace (Reduced):
#4  0x00007f678843c910 in QUtf8::convertFromUnicode(QChar const*, int) () from /usr/lib64/libQt5Core.so.5
#5  0x00007f67882b39d6 in QString::toUtf8_helper(QString const&) () from /usr/lib64/libQt5Core.so.5
#6  0x00007f6788d73e8b in KConfigBase::isGroupImmutable(QString const&) const () from /usr/lib64/libKF5ConfigCore.so.5
#7  0x00007f6788d7b976 in KConfigGroup::KConfigGroup(KConfigBase*, QString const&) () from /usr/lib64/libKF5ConfigCore.so.5
#8  0x000055ac23e91860 in KalendarAlarmClient::removeNotification(AlarmNotification*) ()
Comment 7 Mathias Homann 2022-07-24 08:36:18 UTC
Created attachment 150864 [details]
New crash information added by DrKonqi

kalendarac (5.20.3) using Qt 5.15.5

still crashing every time I dismiss a notification. My calendar data comes from a nextcloud if that makes any difference.

-- Backtrace (Reduced):
#4  _mm_packus_epi16(long long __vector(2), long long __vector(2)) (__B=<error reading variable: Cannot access memory at address 0xab93f147de10>, __A=<error reading variable: Cannot access memory at address 0xab93f147de00>) at /usr/lib64/gcc/x86_64-suse-linux/12/include/emmintrin.h:1000
#5  simdEncodeAscii (end=<optimized out>, src=<optimized out>, nextAscii=<optimized out>, dst=<optimized out>) at codecs/qutfcodec.cpp:90
#6  QUtf8::convertFromUnicode (uc=<optimized out>, len=32617) at codecs/qutfcodec.cpp:383
#7  0x00007f69fa97bd95 in qt_convert_to_utf8 (str=...) at text/qstring.cpp:5380
#8  QString::toUtf8_helper (str=...) at text/qstring.cpp:5372
Comment 8 Damian Dygulski 2022-07-25 15:32:50 UTC
Created attachment 150903 [details]
New crash information added by DrKonqi

kalendarac (5.20.3) using Qt 5.15.5

The application crashes every time I dismiss an event notification

-- Backtrace (Reduced):
#4  _mm_packus_epi16(long long __vector(2), long long __vector(2)) (__B=<error reading variable: Cannot access memory at address 0xd6266e5ffd70>, __A=<error reading variable: Cannot access memory at address 0xd6266e5ffd60>) at /usr/lib64/gcc/x86_64-suse-linux/12/include/emmintrin.h:1000
#5  simdEncodeAscii (end=<optimized out>, src=<optimized out>, nextAscii=<optimized out>, dst=<optimized out>) at codecs/qutfcodec.cpp:90
#6  QUtf8::convertFromUnicode (uc=<optimized out>, len=32758) at codecs/qutfcodec.cpp:383
#7  0x00007ff712d7bd95 in qt_convert_to_utf8 (str=...) at text/qstring.cpp:5380
#8  QString::toUtf8_helper (str=...) at text/qstring.cpp:5372