Bug 452962 - KAlarm crashes when stopping a sound alarm test
Summary: KAlarm crashes when stopping a sound alarm test
Status: RESOLVED FIXED
Alias: None
Product: kalarm
Classification: Applications
Component: sound (show other bugs)
Version: 3.4.0
Platform: Arch Linux Linux
: NOR crash
Target Milestone: ---
Assignee: David Jarvie
URL:
Keywords: drkonqi
Depends on:
Blocks:
 
Reported: 2022-04-25 00:04 UTC by jkhsjdhjs
Modified: 2024-02-25 15:44 UTC (History)
4 users (show)

See Also:
Latest Commit:
Version Fixed In: 22.04.1


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description jkhsjdhjs 2022-04-25 00:04:33 UTC
Application: kalarm (3.4.0 (KDE Apps 22.04.0))

Qt Version: 5.15.3
Frameworks Version: 5.93.0
Operating System: Linux 5.17.4-arch1-1 x86_64
Windowing System: X11
Distribution: "Arch Linux"
DrKonqi: 5.24.4 [KCrashBackend]

-- Information about the crash:
- What I was doing when the application crashed:
I created a new audio alarm, selected a sound file, set a volume and a fade time. When using the try button to test the alarm, clicking the try button again to stop the test crashes KAlarm.

Also the volume slider that is enabled after selecting the "Set Volume" checkbox doesn't has any effect for me, it's always playing at maximum volume. Sometimes the slider doesn't work, sometimes it does. I haven't figured out what's causing it to not work.

The crash can be reproduced every time.

-- Backtrace:
Application: KAlarm (kalarm), signal: Segmentation fault
Content of s_kcrashErrorMessage: {_M_t = {<std::__uniq_ptr_impl<char, std::default_delete<char []> >> = {_M_t = std::tuple containing = {[1] = 0x0, [2] = {<No data fields>}}}, <No data fields>}}
[KCrash Handler]
#6  0x00007f8d957926ba in Phonon::PathPrivate::phononObjectDestroyed(Phonon::MediaNodePrivate*) (this=0x7f8cfc04b990, mediaNodePrivate=0x7f8cfc048f00) at /usr/src/debug/phonon-4.11.1/phonon/path.cpp:393
#7  0x00007f8d95792965 in Phonon::MediaNodePrivate::~MediaNodePrivate() (this=0x7f8cfc048f00, this=<optimized out>) at /usr/src/debug/phonon-4.11.1/phonon/medianode.cpp:69
#8  0x00007f8d957a7e75 in Phonon::EffectPrivate::~EffectPrivate() (this=0x7f8cfc048f00, this=<optimized out>) at /usr/src/debug/phonon-4.11.1/phonon/effect_p.h:37
#9  Phonon::VolumeFaderEffectPrivate::~VolumeFaderEffectPrivate() (this=0x7f8cfc048f00, this=<optimized out>) at /usr/src/debug/phonon-4.11.1/phonon/volumefadereffect_p.h:33
#10 Phonon::VolumeFaderEffectPrivate::~VolumeFaderEffectPrivate() (this=0x7f8cfc048f00, this=<optimized out>) at /usr/src/debug/phonon-4.11.1/phonon/volumefadereffect_p.h:33
#11 0x00007f8d95776308 in Phonon::Effect::~Effect() (this=0x7f8cfc048150, this=<optimized out>) at /usr/src/debug/phonon-4.11.1/phonon/effect.cpp:36
#12 0x00007f8d957a09f4 in Phonon::VolumeFaderEffect::~VolumeFaderEffect() (this=0x7f8cfc048150, this=<optimized out>) at /usr/src/debug/phonon-4.11.1/phonon/volumefadereffect.h:48
#13 Phonon::VolumeFaderEffect::~VolumeFaderEffect() (this=0x7f8cfc048150, this=<optimized out>) at /usr/src/debug/phonon-4.11.1/phonon/volumefadereffect.h:48
#14 0x00007f8d93528615 in QObjectPrivate::deleteChildren() (this=this@entry=0x7f8cfc0041f0) at kernel/qobject.cpp:2104
#15 0x00007f8d93528dc9 in QObject::~QObject() (this=0x7f8cfc004250, this=<optimized out>) at kernel/qobject.cpp:1082
#16 0x00007f8d9578411e in Phonon::MediaObject::~MediaObject() (this=0x7f8cfc004250, this=<optimized out>) at /usr/src/debug/phonon-4.11.1/phonon/mediaobject.cpp:67
#17 0x0000564a41428b3a in AudioPlayer::~AudioPlayer() (this=0x564a442c7e70, this=<optimized out>) at /usr/src/debug/kalarm-22.04.0/src/messagedisplayhelper.cpp:985
#18 0x0000564a4142dcea in AudioPlayer::~AudioPlayer() (this=0x564a442c7e70, this=<optimized out>) at /usr/src/debug/kalarm-22.04.0/src/messagedisplayhelper.cpp:982
#19 MessageDisplayHelper::stopAudio(bool) (wait=<optimized out>) at /usr/src/debug/kalarm-22.04.0/src/messagedisplayhelper.cpp:909
#20 0x0000564a413e3f96 in MessageDisplay::stopAudio(bool) (wait=false) at /usr/src/debug/kalarm-22.04.0/src/messagedisplay.h:92
#21 EditAudioAlarmDlg::slotTry() (this=0x564a43977230) at /usr/src/debug/kalarm-22.04.0/src/editdlgtypes.cpp:1768
#22 EditAudioAlarmDlg::slotTry() (this=0x564a43977230) at /usr/src/debug/kalarm-22.04.0/src/editdlgtypes.cpp:1762
#23 0x00007f8d93532463 in QtPrivate::QSlotObjectBase::call(QObject*, void**) (a=0x7ffc0a6f1340, r=<optimized out>, this=0x564a43b352b0, this=<optimized out>, r=<optimized out>, a=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:398
#24 doActivate<false>(QObject*, int, void**) (sender=0x564a43983850, signal_index=7, argv=0x7ffc0a6f1340) at kernel/qobject.cpp:3886
#25 0x00007f8d941044a4 in QDialogButtonBox::clicked(QAbstractButton*) (this=this@entry=0x564a43983850, _t1=<optimized out>, _t1@entry=0x7f8d88005b80) at .moc/moc_qdialogbuttonbox.cpp:281
#26 0x00007f8d9410d53c in QDialogButtonBoxPrivate::_q_handleButtonClicked() (this=<optimized out>, this=<optimized out>) at widgets/qdialogbuttonbox.cpp:870
#27 QDialogButtonBox::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) (_o=<optimized out>, _c=<optimized out>, _id=<optimized out>, _a=<optimized out>) at .moc/moc_qdialogbuttonbox.cpp:159
#28 0x00007f8d935324af in doActivate<false>(QObject*, int, void**) (sender=0x7f8d88005b80, signal_index=9, argv=0x7ffc0a6f1480) at kernel/qobject.cpp:3898
#29 0x00007f8d9405c9b7 in QAbstractButton::clicked(bool) (this=this@entry=0x7f8d88005b80, _t1=<optimized out>) at .moc/moc_qabstractbutton.cpp:308
#30 0x00007f8d9405f1da in QAbstractButtonPrivate::emitClicked() (this=0x564a43b31550) at widgets/qabstractbutton.cpp:416
#31 0x00007f8d9406070a in QAbstractButtonPrivate::click() (this=0x564a43b31550) at widgets/qabstractbutton.cpp:409
#32 0x00007f8d940608d8 in QAbstractButton::mouseReleaseEvent(QMouseEvent*) (this=0x7f8d88005b80, e=0x7ffc0a6f1a00) at widgets/qabstractbutton.cpp:1045
#33 0x00007f8d93fae446 in QWidget::event(QEvent*) (this=0x7f8d88005b80, event=0x7ffc0a6f1a00) at kernel/qwidget.cpp:8659
#34 0x00007f8d93f782c6 in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=this@entry=0x564a43337980, receiver=receiver@entry=0x7f8d88005b80, e=e@entry=0x7ffc0a6f1a00) at kernel/qapplication.cpp:3637
#35 0x00007f8d93f7d0f7 in QApplication::notify(QObject*, QEvent*) (this=0x7ffc0a6f1690, receiver=0x7f8d88005b80, e=0x7ffc0a6f1a00) at kernel/qapplication.cpp:3081
#36 0x00007f8d935015aa in QCoreApplication::notifyInternal2(QObject*, QEvent*) (receiver=0x7f8d88005b80, event=0x7ffc0a6f1a00) at kernel/qcoreapplication.cpp:1064
#37 0x00007f8d93f7babf in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool, bool) (receiver=0x7f8d88005b80, event=0x7ffc0a6f1a00, alienWidget=0x7f8d88005b80, nativeWidget=0x564a43977230, buttonDown=<optimized out>, lastMouseReceiver=..., spontaneous=true, onlyDispatchEnterLeave=false) at kernel/qapplication.cpp:2619
#38 0x00007f8d93fcc927 in QWidgetWindow::handleMouseEvent(QMouseEvent*) (this=0x564a43cdd5c0, event=0x7ffc0a6f1d70) at kernel/qwidgetwindow.cpp:683
#39 0x00007f8d93fce4dc in QWidgetWindow::event(QEvent*) (this=0x564a43cdd5c0, event=0x7ffc0a6f1d70) at kernel/qwidgetwindow.cpp:300
#40 0x00007f8d93f782c6 in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=<optimized out>, receiver=0x564a43cdd5c0, e=0x7ffc0a6f1d70) at kernel/qapplication.cpp:3637
#41 0x00007f8d935015aa in QCoreApplication::notifyInternal2(QObject*, QEvent*) (receiver=0x564a43cdd5c0, event=0x7ffc0a6f1d70) at kernel/qcoreapplication.cpp:1064
#42 0x00007f8d938d4fd0 in QGuiApplicationPrivate::processMouseEvent(QWindowSystemInterfacePrivate::MouseEvent*) (e=0x564a43b1b400) at kernel/qguiapplication.cpp:2282
#43 0x00007f8d938bf6f5 in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) (flags=flags@entry=...) at kernel/qwindowsysteminterface.cpp:1169
#44 0x00007f8d8d70af60 in xcbSourceDispatch(GSource*, GSourceFunc, gpointer) (source=<optimized out>) at /usr/src/debug/qtbase/src/plugins/platforms/xcb/qxcbeventdispatcher.cpp:105
#45 0x00007f8d911b2163 in g_main_dispatch (context=0x7f8d88005010) at ../glib/glib/gmain.c:3417
#46 g_main_context_dispatch (context=0x7f8d88005010) at ../glib/glib/gmain.c:4135
#47 0x00007f8d912089e9 in g_main_context_iterate.constprop.0 (context=context@entry=0x7f8d88005010, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/glib/gmain.c:4211
#48 0x00007f8d911af6c5 in g_main_context_iteration (context=0x7f8d88005010, may_block=1) at ../glib/glib/gmain.c:4276
#49 0x00007f8d9354d57a in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x564a4347b780, flags=...) at kernel/qeventdispatcher_glib.cpp:423
#50 0x00007f8d934f988b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7ffc0a6f2100, flags=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:69
#51 0x00007f8d93504fd7 in QCoreApplication::exec() () at ../../include/QtCore/../../src/corelib/global/qflags.h:121
#52 0x00007f8d938d01d2 in QGuiApplication::exec() () at kernel/qguiapplication.cpp:1867
#53 0x00007f8d93f7664a in QApplication::exec() () at kernel/qapplication.cpp:2829
#54 0x0000564a4136144e in main(int, char**) (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/kalarm-22.04.0/src/main.cpp:75
[Inferior 1 (process 60847) detached]

Reported using DrKonqi
Comment 1 jkhsjdhjs 2022-04-25 00:08:25 UTC
The crash only happens when fading is enabled.
Comment 2 David Jarvie 2022-04-25 19:17:53 UTC
This looks like a Phonon bug, so I'm reassigning it to Phonon.

A workaround to prevent the KAlarm crash has been implemented for KAlarm version 3.4.1 (KDE apps 22.04.1) by https://invent.kde.org/pim/kalarm/commit/30d5a943393d647bb7471d571d25a326e217ec04.
Comment 3 jkhsjdhjs 2022-04-25 20:58:52 UTC
Woah, thank you very much for the quick workaround!