Bug 514212 - segfault/crash when choosing "New Display Alarm" in kalarm since upgrade to ktextaddons 1.9.0
Summary: segfault/crash when choosing "New Display Alarm" in kalarm since upgrade to k...
Status: RESOLVED FIXED
Alias: None
Product: ktextaddons
Classification: Frameworks and Libraries
Component: general (other bugs)
Version First Reported In: 1.9.0
Platform: Arch Linux Linux
: NOR crash
Target Milestone: ---
Assignee: Laurent Montel
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2026-01-06 04:25 UTC by Erica J.
Modified: 2026-01-06 12:33 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed/Implemented In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Erica J. 2026-01-06 04:25:34 UTC
SUMMARY
After upgrading from ktextaddons 1.8.0-2 to 1.9.0-1 I could no longer add new display alarms.  When I clicked New Display Alarm in the application menu or from the taskbar, kalarm would crash and tell the console there was a segmentation fault.  I downgraded ktextaddons to 1.8.0-2 and could once again add display alarms as usual.  This did not affect other alarm types or deferring existing display alarms.

STEPS TO REPRODUCE
1. run kalarm 3.12.0 with ktextaddons 1.9.0 installed 
2. open either the application menu or the taskbar menu
3. select New Alarm → New Display Alarm

OBSERVED RESULT
kalarm crash.  segfault reported if run from terminal.

EXPECTED RESULT
New Display Alarm window appears over the main kalarm window

SOFTWARE/OS VERSIONS
Linux Version: 6.18.3-arch1-1 (64-bit) 
KDE Plasma Version: 6.5.4
KDE Frameworks Version: 6.21.0
Qt Version: 6.10.1
Graphics Platform: Wayland

ADDITIONAL INFORMATION
As I'm disabled I presently don't have the time to find and install debug symbols for every single thing involved in kalarm's display alarm window.  I found the package that can be introduced or removed to introduce or remove the segfault, as changing nothing but the version of ktextaddons decides whether it will happen, independent of any other updates or downgrades.  I haven't changed the text display options in the New Display Alarm window since the defaults that came with the original installation of kalarm 23.04.2-1 when I first set up this particular home drive.  If having trouble reproducing, try using the settings that were default in April 2023.
Comment 1 Antonio Rojas 2026-01-06 09:11:07 UTC
Backtrace:

#0  QTextToSpeech::state (this=0x0) at /usr/src/debug/qt6-speech/qtspeech/src/tts/qtexttospeech.cpp:616
#1  0x00007ffff7217c46 in TextEditTextToSpeech::TextToSpeech::isReady (this=<optimized out>)
    at /usr/src/debug/ktextaddons/ktextaddons-1.9.0/textedittexttospeech/texttospeech.cpp:121
#2  0x0000555555656cfc in SoundPicker::showSpeak (this=this@entry=0x55555627d9e0, show=show@entry=true)
    at /usr/src/debug/kalarm/kalarm-25.12.0/src/soundpicker.cpp:134
#3  0x00005555556572f0 in SoundPicker::SoundPicker (this=<optimized out>, parent=<optimized out>, this=<optimized out>, parent=<optimized out>)
    at /usr/src/debug/kalarm/kalarm-25.12.0/src/soundpicker.cpp:70
#4  0x0000555555648314 in EditDisplayAlarmDlg::type_init (this=0x555555dc8f10, parent=0x555556254520, frameLayout=0x555555fe49c0)
    at /usr/src/debug/kalarm/kalarm-25.12.0/src/editdlgtypes.cpp:216
#5  0x000055555563cb6b in EditAlarmDlg::init (this=this@entry=0x555555dc8f10, event=...) at /usr/src/debug/kalarm/kalarm-25.12.0/src/editdlg.cpp:262
#6  0x000055555563e87d in EditAudioAlarmDlg::EditAudioAlarmDlg (getResource=<optimized out>, this=<optimized out>, Template=<optimized out>, 
    parent=<optimized out>) at /usr/src/debug/kalarm/kalarm-25.12.0/src/editdlgtypes.cpp:1597
#7  EditAlarmDlg::create(bool, EditAlarmDlg::Type, QWidget*, EditAlarmDlg::GetResourceType) [clone .constprop.0] (Template=Template@entry=false, 
    type=<optimized out>, parent=0x555555d60b20, getResource=EditAlarmDlg::RES_PROMPT) at /usr/src/debug/kalarm/kalarm-25.12.0/src/editdlg.cpp:98
#8  0x0000555555690872 in KAlarm::editNewAlarm (type=<optimized out>, startDate=..., parent=<optimized out>)
    at /usr/src/debug/kalarm/kalarm-25.12.0/src/functions.cpp:1083
#9  KAlarm::editNewAlarm (type=<optimized out>, parent=<optimized out>) at /usr/src/debug/kalarm/kalarm-25.12.0/src/functions.cpp:1079
#10 MainWindow::slotNew (this=<optimized out>, type=<optimized out>) at /usr/src/debug/kalarm/kalarm-25.12.0/src/mainwindow.cpp:759
#11 0x00007ffff55dd382 in QtPrivate::QSlotObjectBase::call (this=<optimized out>, r=<optimized out>, a=<optimized out>, this=<optimized out>, 
    r=<optimized out>, a=<optimized out>) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qobjectdefs_impl.h:461
#12 doActivate<false> (sender=0x555555d03e40, signal_index=11, argv=0x7fffffffb870) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qobject.cpp:4371
--Type <RET> for more, q to quit, c to continue without paging--c
#13 0x00005555557167ff in QMetaObject::activate<void, EditAlarmDlg::Type> (sender=<optimized out>, mo=<optimized out>, local_signal_index=0, ret=0x0)
    at /usr/include/qt6/QtCore/qobjectdefs.h:319
#14 NewAlarmAction::selected (this=<optimized out>, _t1=<optimized out>)
    at /usr/src/debug/kalarm/build/src/kalarm_bin_autogen/include/moc_newalarmaction.cpp:162
#15 NewAlarmAction::slotSelected (this=<optimized out>, action=<optimized out>) at /usr/src/debug/kalarm/kalarm-25.12.0/src/newalarmaction.cpp:139
#16 0x00007ffff55dd382 in QtPrivate::QSlotObjectBase::call (this=<optimized out>, r=<optimized out>, a=<optimized out>, this=<optimized out>, 
    r=<optimized out>, a=<optimized out>) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qobjectdefs_impl.h:461
#17 doActivate<false> (sender=0x555555d03ea0, signal_index=9, argv=0x7fffffffb9d0) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qobject.cpp:4371
#18 0x00007ffff691e627 in QMetaObject::activate<void, QAction*> (sender=0x555555d03ea0, mo=<optimized out>, local_signal_index=2, ret=0x0)
    at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qobjectdefs.h:321
#19 QMenu::triggered (this=0x555555d03ea0, _t1=0x555555e221f0) at /usr/src/debug/qt6-base/build/src/widgets/Widgets_autogen/include/moc_qmenu.cpp:237
#20 QMenuPrivate::_q_actionTriggered (this=0x555555d5b5f0) at /usr/src/debug/qt6-base/qtbase/src/widgets/widgets/qmenu.cpp:1521
#21 QMenu::qt_static_metacall (_o=<optimized out>, _c=<optimized out>, _id=<optimized out>, _a=<optimized out>)
    at /usr/src/debug/qt6-base/build/src/widgets/Widgets_autogen/include/moc_qmenu.cpp:125
#22 0x00007ffff55dd713 in doActivate<false> (sender=<error reading variable: Cannot access memory at address 0x7fffffffba78>, 
    signal_index=<error reading variable: Cannot access memory at address 0x7fffffffba74>, 
    argv=<error reading variable: Cannot access memory at address 0x7fffffffba58>) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qobject.cpp:4383
#23 0x00007ffff6228ed5 in QMetaObject::activate<void, bool> (sender=<optimized out>, mo=<optimized out>, local_signal_index=<optimized out>, 
    ret=<optimized out>, sender=<optimized out>, mo=<optimized out>, local_signal_index=<optimized out>, ret=<optimized out>)
    at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qobjectdefs.h:321
#24 QAction::triggered (this=<optimized out>, _t1=<optimized out>) at /usr/src/debug/qt6-base/build/src/gui/Gui_autogen/include/moc_qaction.cpp:376
#25 QAction::activate (this=<error reading variable: Cannot access memory at address 0x7fffffffbab8>, event=<optimized out>)
    at /usr/src/debug/qt6-base/qtbase/src/gui/kernel/qaction.cpp:1104
Comment 2 Laurent Montel 2026-01-06 12:33:03 UTC
Git commit da43e1bab4a3e755b2dec7d1533e5b2ca8f6e06b by Laurent Montel.
Committed on 06/01/2026 at 12:32.
Pushed by mlaurent into branch '1.9'.

Fix 514212: segfault/crash when choosing "New Display Alarm" in kalarm since upgrade to ktextaddons 1.9.0

M  +3    -0    textedittexttospeech/texttospeech.cpp

https://invent.kde.org/libraries/ktextaddons/-/commit/da43e1bab4a3e755b2dec7d1533e5b2ca8f6e06b