Bug 393080 - Crash in PodcastSettingsDialog::init
Summary: Crash in PodcastSettingsDialog::init
Status: RESOLVED FIXED
Alias: None
Product: amarok
Classification: Applications
Component: Podcast (show other bugs)
Version: kf5
Platform: Gentoo Packages Linux
: NOR crash
Target Milestone: kf5
Assignee: Amarok Developers
URL:
Keywords:
: 410546 (view as bug list)
Depends on:
Blocks:
 
Reported: 2018-04-13 02:09 UTC by Lyall
Modified: 2024-03-24 00:08 UTC (History)
5 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments
Portage emerge --info output. (15.79 KB, application/x-info)
2018-04-13 02:09 UTC, Lyall
Details
Debug output - amarok --debug, it's a text file, with colour escape codes, embedded (114.43 KB, text/plain)
2022-07-30 02:27 UTC, Lyall
Details
Screen shots from start to crash (48.64 KB, application/gzip)
2022-07-30 02:29 UTC, Lyall
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Lyall 2018-04-13 02:09:28 UTC
Created attachment 111992 [details]
Portage emerge --info output.

When starting the podcast download episode, the tmp file is located in the podcast directory, but once the download is complete and the file renamed, it moves 'up' one directory level.
Additionally, right click a podcast entry to 'configure' results in a core dump, every time.
Gentoo system, Intel, 64 bit, happy to provide specific version info on request.
Attached emerge info includes various library versions, env variables, etc, which may be of use.
Comment 1 Myriam Schweingruber 2018-04-13 20:29:09 UTC
We would need a backtrace of this crash, with debugging enabled of course. Please post this directly in the comment, attachments are not searchable.
Comment 2 Lyall 2018-04-14 02:19:52 UTC
I don't have amarok built with Debug yet, hopefully this stack trace might help whilst I figure out how to get a specific Gentoo ebuild to build with debug (and it's supporting libraries, building may take a bit of time).

lyall@Lyalls-PC /data/cores
$ gdb /usr/bin/amarok core.amarok.19804.1000.11.1523671946 
GNU gdb (Gentoo 7.12.1 vanilla) 7.12.1
Copyright (C) 2017 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-pc-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<https://bugs.gentoo.org/>.
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/amarok...(no debugging symbols found)...done.
[New LWP 19804]
[New LWP 19813]
[New LWP 19811]
[New LWP 19812]
[New LWP 19806]
[New LWP 19810]
[New LWP 19817]
[New LWP 19821]
[New LWP 19814]
[New LWP 19820]
[New LWP 19825]
[New LWP 19816]
[New LWP 19818]
[New LWP 19808]
[New LWP 19826]
[New LWP 19805]
[New LWP 19819]
[New LWP 19824]
[New LWP 19815]
[New LWP 19822]
[New LWP 19827]
[New LWP 19823]
[New LWP 19828]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".
Core was generated by `amarok'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0  0x00007f1ebab39f02 in QWidget::setEnabled(bool) () from /usr/lib64/libQt5Widgets.so.5
[Current thread is 1 (Thread 0x7f1ebc0517c0 (LWP 19804))]
(gdb) where
#0  0x00007f1ebab39f02 in QWidget::setEnabled(bool) () from /usr/lib64/libQt5Widgets.so.5
#1  0x00007f1ebb769e6c in ?? () from /usr/lib64/libamaroklib.so.1
#2  0x00007f1ebb76a996 in ?? () from /usr/lib64/libamaroklib.so.1
#3  0x00007f1ebb75b9f4 in Podcasts::SqlPodcastProvider::configureChannel(AmarokSharedPointer<Podcasts::SqlPodcastChannel>) () from /usr/lib64/libamaroklib.so.1
#4  0x00007f1ebb75bd6c in Podcasts::SqlPodcastProvider::slotConfigureChannel() ()
   from /usr/lib64/libamaroklib.so.1
#5  0x00007f1eb97e965e in QMetaObject::activate(QObject*, int, int, void**) () from /usr/lib64/libQt5Core.so.5
#6  0x00007f1ebaaf97c2 in QAction::triggered(bool) () from /usr/lib64/libQt5Widgets.so.5
#7  0x00007f1ebaafbe60 in QAction::activate(QAction::ActionEvent) () from /usr/lib64/libQt5Widgets.so.5
#8  0x00007f1ebac7ae8a in ?? () from /usr/lib64/libQt5Widgets.so.5
#9  0x00007f1ebac823e4 in ?? () from /usr/lib64/libQt5Widgets.so.5
#10 0x00007f1ebac834a2 in QMenu::mouseReleaseEvent(QMouseEvent*) () from /usr/lib64/libQt5Widgets.so.5
#11 0x00007f1ebab3f240 in QWidget::event(QEvent*) () from /usr/lib64/libQt5Widgets.so.5
#12 0x00007f1ebac85903 in QMenu::event(QEvent*) () from /usr/lib64/libQt5Widgets.so.5
#13 0x00007f1ebaaffd9c in QApplicationPrivate::notify_helper(QObject*, QEvent*) ()
   from /usr/lib64/libQt5Widgets.so.5
#14 0x00007f1ebab08458 in QApplication::notify(QObject*, QEvent*) () from /usr/lib64/libQt5Widgets.so.5
#15 0x00007f1eb97c06ea in QCoreApplication::notifyInternal2(QObject*, QEvent*) ()
   from /usr/lib64/libQt5Core.so.5
#16 0x00007f1ebab06b7d in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool) () from /usr/lib64/libQt5Widgets.so.5
#17 0x00007f1ebab59606 in ?? () from /usr/lib64/libQt5Widgets.so.5
#18 0x00007f1ebab5bb53 in ?? () from /usr/lib64/libQt5Widgets.so.5
#19 0x00007f1ebaaffd9c in QApplicationPrivate::notify_helper(QObject*, QEvent*) ()
   from /usr/lib64/libQt5Widgets.so.5
#20 0x00007f1ebab07619 in QApplication::notify(QObject*, QEvent*) () from /usr/lib64/libQt5Widgets.so.5
#21 0x00007f1eb97c06ea in QCoreApplication::notifyInternal2(QObject*, QEvent*) ()
   from /usr/lib64/libQt5Core.so.5
#22 0x00007f1eb9d077ab in QGuiApplicationPrivate::processMouseEvent(QWindowSystemInterfacePrivate::MouseEvent*)
    () from /usr/lib64/libQt5Gui.so.5
#23 0x00007f1eb9d093c5 in QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent*) () from /usr/lib64/libQt5Gui.so.5
#24 0x00007f1eb9ce578b in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>)
    () from /usr/lib64/libQt5Gui.so.5
#25 0x00007f1ea605f770 in ?? () from /usr/lib64/libQt5XcbQpa.so.5
#26 0x00007f1eaf824707 in g_main_context_dispatch () from /usr/lib64/libglib-2.0.so.0
#27 0x00007f1eaf824970 in ?? () from /usr/lib64/libglib-2.0.so.0
#28 0x00007f1eaf824a1c in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#29 0x00007f1eb9810fbf in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) ()
   from /usr/lib64/libQt5Core.so.5
#30 0x00007f1eb97bf41a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) ()
   from /usr/lib64/libQt5Core.so.5
#31 0x00007f1ebac8006d in QMenu::exec(QPoint const&, QAction*) () from /usr/lib64/libQt5Widgets.so.5
#32 0x00007f1ebb881f0d in ?? () from /usr/lib64/libamaroklib.so.1
#33 0x00007f1ebab3fef1 in QWidget::event(QEvent*) () from /usr/lib64/libQt5Widgets.so.5
---Type <return> to continue, or q <return> to quit--- 
#34 0x00007f1ebabe50ae in QFrame::event(QEvent*) () from /usr/lib64/libQt5Widgets.so.5
#35 0x00007f1ebad54703 in QAbstractItemView::viewportEvent(QEvent*) () from /usr/lib64/libQt5Widgets.so.5
#36 0x00007f1ebba90f4b in Amarok::PrettyTreeView::viewportEvent(QEvent*) () from /usr/lib64/libamaroklib.so.1
#37 0x00007f1eb97c04d2 in QCoreApplicationPrivate::sendThroughObjectEventFilters(QObject*, QEvent*) ()
   from /usr/lib64/libQt5Core.so.5
#38 0x00007f1ebaaffd75 in QApplicationPrivate::notify_helper(QObject*, QEvent*) ()
   from /usr/lib64/libQt5Widgets.so.5
#39 0x00007f1ebab08730 in QApplication::notify(QObject*, QEvent*) () from /usr/lib64/libQt5Widgets.so.5
#40 0x00007f1eb97c06ea in QCoreApplication::notifyInternal2(QObject*, QEvent*) ()
   from /usr/lib64/libQt5Core.so.5
#41 0x00007f1ebab5934b in ?? () from /usr/lib64/libQt5Widgets.so.5
#42 0x00007f1ebab5bb53 in ?? () from /usr/lib64/libQt5Widgets.so.5
#43 0x00007f1ebaaffd9c in QApplicationPrivate::notify_helper(QObject*, QEvent*) ()
   from /usr/lib64/libQt5Widgets.so.5
#44 0x00007f1ebab07619 in QApplication::notify(QObject*, QEvent*) () from /usr/lib64/libQt5Widgets.so.5
#45 0x00007f1eb97c06ea in QCoreApplication::notifyInternal2(QObject*, QEvent*) ()
   from /usr/lib64/libQt5Core.so.5
#46 0x00007f1eb9d077ab in QGuiApplicationPrivate::processMouseEvent(QWindowSystemInterfacePrivate::MouseEvent*)
    () from /usr/lib64/libQt5Gui.so.5
#47 0x00007f1eb9d093c5 in QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent*) () from /usr/lib64/libQt5Gui.so.5
#48 0x00007f1eb9ce578b in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>)
    () from /usr/lib64/libQt5Gui.so.5
#49 0x00007f1ea605f770 in ?? () from /usr/lib64/libQt5XcbQpa.so.5
#50 0x00007f1eaf824707 in g_main_context_dispatch () from /usr/lib64/libglib-2.0.so.0
#51 0x00007f1eaf824970 in ?? () from /usr/lib64/libglib-2.0.so.0
#52 0x00007f1eaf824a1c in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#53 0x00007f1eb9810fbf in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) ()
   from /usr/lib64/libQt5Core.so.5
#54 0x00007f1eb97bf41a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) ()
   from /usr/lib64/libQt5Core.so.5
#55 0x00007f1eb97c79b4 in QCoreApplication::exec() () from /usr/lib64/libQt5Core.so.5
#56 0x000055e7cb998502 in ?? ()
#57 0x00007f1eb8dec541 in __libc_start_main () from /lib64/libc.so.6
#58 0x000055e7cb99869a in ?? ()
(gdb) q
lyall@Lyalls-PC /data/cores
$
Comment 3 Lyall 2018-04-14 03:54:14 UTC
Updated stack trace after rebuilding amarok and many supporting libraries with debug enabled.
I have around 19 podcasts setup, I expand the podcast list by double clicking the tiny triangle on the right.
I then right click, in this example, the first podcast
I then select 'configure' and release, core dumps.

Hopefully this helps :)

lyall@Lyalls-PC /data/cores
$ gdb /usr/bin/amarok core.amarok.6660.1000.11.1523677777 
GNU gdb (Gentoo 7.12.1 vanilla) 7.12.1
Copyright (C) 2017 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-pc-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<https://bugs.gentoo.org/>.
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/amarok...Reading symbols from /usr/lib64/debug//usr/bin/amarok.debug...done.
done.
[New LWP 6660]
[New LWP 6671]
[New LWP 6666]
[New LWP 6670]
[New LWP 6679]
[New LWP 6681]
[New LWP 6678]
[New LWP 6687]
[New LWP 6685]
[New LWP 6688]
[New LWP 6682]
[New LWP 6661]
[New LWP 6663]
[New LWP 6683]
[New LWP 6673]
[New LWP 6690]
[New LWP 6691]
[New LWP 6672]
[New LWP 6669]
[New LWP 6692]
[New LWP 6680]
[New LWP 6684]
[New LWP 6686]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".
Core was generated by `amarok'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0  QScopedPointer<QObjectData, QScopedPointerDeleter<QObjectData> >::data (this=0x8) at ../../include/QtCore/../../src/corelib/tools/qscopedpointer.h:140
140     ../../include/QtCore/../../src/corelib/tools/qscopedpointer.h: No such file or directory.
[Current thread is 1 (Thread 0x7f3d8a81c7c0 (LWP 6660))]
(gdb) where
#0  QScopedPointer<QObjectData, QScopedPointerDeleter<QObjectData> >::data (this=0x8) at ../../include/QtCore/../../src/corelib/tools/qscopedpointer.h:140
#1  qGetPtrHelper<QScopedPointer<QObjectData> > (p=...) at ../../include/QtCore/../../src/corelib/global/qglobal.h:999
#2  QWidget::d_func (this=0x0) at kernel/qwidget.h:131
#3  QWidget::setEnabled (this=0x0, enable=enable@entry=false) at kernel/qwidget.cpp:3426
#4  0x00007f3d89f34e6c in PodcastSettingsDialog::init (this=this@entry=0x7fffc1c59200) at /tmp/portage/media-sound/amarok-9999/work/amarok-9999/src/core-impl/podcasts/sql/PodcastSettingsDialog.cpp:91
#5  0x00007f3d89f35996 in PodcastSettingsDialog::PodcastSettingsDialog (this=0x7fffc1c59200, channel=..., parent=<optimized out>)
    at /tmp/portage/media-sound/amarok-9999/work/amarok-9999/src/core-impl/podcasts/sql/PodcastSettingsDialog.cpp:54
#6  0x00007f3d89f269f4 in Podcasts::SqlPodcastProvider::configureChannel (this=this@entry=0x5597995a3f30, sqlChannel=...)
    at /tmp/portage/media-sound/amarok-9999/work/amarok-9999/src/core-impl/podcasts/sql/SqlPodcastProvider.cpp:742
#7  0x00007f3d89f26d6c in Podcasts::SqlPodcastProvider::slotConfigureChannel (this=0x5597995a3f30)
    at /tmp/portage/media-sound/amarok-9999/work/amarok-9999/src/core-impl/podcasts/sql/SqlPodcastProvider.cpp:937
#8  0x00007f3d87edabb2 in QtPrivate::QSlotObjectBase::call (a=0x7fffc1c59400, r=0x5597995a3f38, this=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qobject_impl.h:101
#9  QMetaObject::activate (sender=sender@entry=0x55979ab635f0, signalOffset=<optimized out>, local_signal_index=local_signal_index@entry=1, argv=argv@entry=0x7fffc1c59400) at kernel/qobject.cpp:3749
#10 0x00007f3d87edb087 in QMetaObject::activate (sender=sender@entry=0x55979ab635f0, m=m@entry=0x7f3d89992e00 <QAction::staticMetaObject>, local_signal_index=local_signal_index@entry=1, 
    argv=argv@entry=0x7fffc1c59400) at kernel/qobject.cpp:3628
#11 0x00007f3d8926abd2 in QAction::triggered (this=this@entry=0x55979ab635f0, _t1=<optimized out>) at .moc/moc_qaction.cpp:373
#12 0x00007f3d8926d980 in QAction::activate (this=0x55979ab635f0, event=<optimized out>) at kernel/qaction.cpp:1165
#13 0x00007f3d89406aea in QMenuPrivate::activateCausedStack (this=this@entry=0x55979ab383c0, causedStack=..., action=action@entry=0x55979ab635f0, action_e=action_e@entry=QAction::Trigger, 
    self=self@entry=true) at widgets/qmenu.cpp:1323
#14 0x00007f3d8940e554 in QMenuPrivate::activateAction (this=this@entry=0x55979ab383c0, action=action@entry=0x55979ab635f0, action_e=action_e@entry=QAction::Trigger, self=self@entry=true)
    at widgets/qmenu.cpp:1400
#15 0x00007f3d8940f5b7 in QMenu::mouseReleaseEvent (this=<optimized out>, e=0x7fffc1c59a60) at widgets/qmenu.cpp:2888
#16 0x00007f3d892b7f80 in QWidget::event (this=this@entry=0x7fffc1c5a2a0, event=event@entry=0x7fffc1c59a60) at kernel/qwidget.cpp:9279
#17 0x00007f3d89411763 in QMenu::event (this=0x7fffc1c5a2a0, e=0x7fffc1c59a60) at widgets/qmenu.cpp:3010
#18 0x00007f3d8927252c in QApplicationPrivate::notify_helper (this=<optimized out>, receiver=0x7fffc1c5a2a0, e=0x7fffc1c59a60) at kernel/qapplication.cpp:3722
#19 0x00007f3d8927aba6 in QApplication::notify (this=<optimized out>, receiver=0x7fffc1c5a2a0, e=0x7fffc1c59a60) at kernel/qapplication.cpp:3198
#20 0x00007f3d87eac2ba in QCoreApplication::notifyInternal2 (receiver=receiver@entry=0x7fffc1c5a2a0, event=event@entry=0x7fffc1c59a60) at kernel/qcoreapplication.cpp:1016
#21 0x00007f3d8927941d in QCoreApplication::sendSpontaneousEvent (event=0x7fffc1c59a60, receiver=0x7fffc1c5a2a0) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:236
#22 QApplicationPrivate::sendMouseEvent (receiver=receiver@entry=0x7fffc1c5a2a0, event=event@entry=0x7fffc1c59a60, alienWidget=<optimized out>, alienWidget@entry=0x7fffc1c5a2a0, nativeWidget=0x7fffc1c5a2a0, 
    buttonDown=buttonDown@entry=0x7f3d899c1900 <qt_button_down>, lastMouseReceiver=..., spontaneous=true) at kernel/qapplication.cpp:2702
#23 0x00007f3d892d3696 in QWidgetWindow::handleMouseEvent (this=this@entry=0x55979ab38770, event=event@entry=0x7fffc1c59e60) at kernel/qwidgetwindow.cpp:523
#24 0x00007f3d892d5dab in QWidgetWindow::event (this=0x55979ab38770, event=0x7fffc1c59e60) at kernel/qwidgetwindow.cpp:250
#25 0x00007f3d8927252c in QApplicationPrivate::notify_helper (this=<optimized out>, receiver=0x55979ab38770, e=0x7fffc1c59e60) at kernel/qapplication.cpp:3722
#26 0x00007f3d89279eed in QApplication::notify (this=0x7fffc1c5b1c0, receiver=0x55979ab38770, e=0x7fffc1c59e60) at kernel/qapplication.cpp:3481
#27 0x00007f3d87eac2ba in QCoreApplication::notifyInternal2 (receiver=receiver@entry=0x55979ab38770, event=event@entry=0x7fffc1c59e60) at kernel/qcoreapplication.cpp:1016
#28 0x00007f3d8841bdeb in QCoreApplication::sendSpontaneousEvent (event=0x7fffc1c59e60, receiver=0x55979ab38770) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:236
#29 QGuiApplicationPrivate::processMouseEvent (e=0x55979959d200) at kernel/qguiapplication.cpp:1952
#30 0x00007f3d8841da05 in QGuiApplicationPrivate::processWindowSystemEvent (e=e@entry=0x55979959d200) at kernel/qguiapplication.cpp:1733
#31 0x00007f3d883f76bb in QWindowSystemInterface::sendWindowSystemEvents (flags=...) at kernel/qwindowsysteminterface.cpp:946
#32 0x00007f3d744ecb30 in userEventSourceDispatch (source=<optimized out>) at qeventdispatcher_glib.cpp:77
#33 0x00007f3d7dcc6707 in g_main_context_dispatch () from /usr/lib64/libglib-2.0.so.0
#34 0x00007f3d7dcc6970 in ?? () from /usr/lib64/libglib-2.0.so.0
#35 0x00007f3d7dcc6a1c in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#36 0x00007f3d87f05c2f in QEventDispatcherGlib::processEvents (this=0x5597992a5c40, flags=...) at kernel/qeventdispatcher_glib.cpp:423
#37 0x00007f3d87eaa9c2 in QEventLoop::exec (this=this@entry=0x7fffc1c5a200, flags=..., flags@entry=...) at kernel/qeventloop.cpp:212
#38 0x00007f3d8940bfdd in QMenu::exec (this=this@entry=0x7fffc1c5a2a0, p=..., action=action@entry=0x0) at widgets/qmenu.cpp:2622
#39 0x00007f3d8a04cf0d in PlaylistBrowserNS::PlaylistBrowserView::contextMenuEvent (this=0x5597999d6c40, event=0x7fffc1c5a8d0)
    at /tmp/portage/media-sound/amarok-9999/work/amarok-9999/src/browsers/playlistbrowser/PlaylistBrowserView.cpp:270
#40 0x00007f3d892b8c61 in QWidget::event (this=this@entry=0x5597999d6c40, event=event@entry=0x7fffc1c5a8d0) at kernel/qwidget.cpp:9077
#41 0x00007f3d89364f4e in QFrame::event (this=0x5597999d6c40, e=0x7fffc1c5a8d0) at widgets/qframe.cpp:550
#42 0x00007f3d894ed53b in QAbstractItemView::viewportEvent (this=this@entry=0x5597999d6c40, event=event@entry=0x7fffc1c5a8d0) at itemviews/qabstractitemview.cpp:1748
#43 0x00007f3d8a25bf4b in Amarok::PrettyTreeView::viewportEvent (this=0x5597999d6c40, event=0x7fffc1c5a8d0) at /tmp/portage/media-sound/amarok-9999/work/amarok-9999/src/widgets/PrettyTreeView.cpp:223
#44 0x00007f3d87eac07d in QCoreApplicationPrivate::sendThroughObjectEventFilters (receiver=receiver@entry=0x5597999d57d0, event=event@entry=0x7fffc1c5a8d0) at kernel/qcoreapplication.cpp:1127
#45 0x00007f3d89272505 in QApplicationPrivate::notify_helper (this=<optimized out>, receiver=0x5597999d57d0, e=0x7fffc1c5a8d0) at kernel/qapplication.cpp:3718
#46 0x00007f3d8927afc0 in QApplication::notify (this=<optimized out>, receiver=0x5597999d57d0, e=0x7fffc1c5a8d0) at kernel/qapplication.cpp:3342
#47 0x00007f3d87eac2ba in QCoreApplication::notifyInternal2 (receiver=receiver@entry=0x5597999d57d0, event=event@entry=0x7fffc1c5a8d0) at kernel/qcoreapplication.cpp:1016
#48 0x00007f3d892d33db in QCoreApplication::sendSpontaneousEvent (event=0x7fffc1c5a8d0, receiver=0x5597999d57d0) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:236
#49 QWidgetWindow::handleMouseEvent (this=this@entry=0x5597999efcd0, event=event@entry=0x7fffc1c5acd0) at kernel/qwidgetwindow.cpp:636
#50 0x00007f3d892d5dab in QWidgetWindow::event (this=0x5597999efcd0, event=0x7fffc1c5acd0) at kernel/qwidgetwindow.cpp:250
#51 0x00007f3d8927252c in QApplicationPrivate::notify_helper (this=<optimized out>, receiver=0x5597999efcd0, e=0x7fffc1c5acd0) at kernel/qapplication.cpp:3722
#52 0x00007f3d89279eed in QApplication::notify (this=0x7fffc1c5b1c0, receiver=0x5597999efcd0, e=0x7fffc1c5acd0) at kernel/qapplication.cpp:3481
#53 0x00007f3d87eac2ba in QCoreApplication::notifyInternal2 (receiver=receiver@entry=0x5597999efcd0, event=event@entry=0x7fffc1c5acd0) at kernel/qcoreapplication.cpp:1016
#54 0x00007f3d8841bdeb in QCoreApplication::sendSpontaneousEvent (event=0x7fffc1c5acd0, receiver=0x5597999efcd0) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:236
#55 QGuiApplicationPrivate::processMouseEvent (e=0x55979ab02390) at kernel/qguiapplication.cpp:1952
#56 0x00007f3d8841da05 in QGuiApplicationPrivate::processWindowSystemEvent (e=e@entry=0x55979ab02390) at kernel/qguiapplication.cpp:1733
#57 0x00007f3d883f76bb in QWindowSystemInterface::sendWindowSystemEvents (flags=...) at kernel/qwindowsysteminterface.cpp:946
#58 0x00007f3d744ecb30 in userEventSourceDispatch (source=<optimized out>) at qeventdispatcher_glib.cpp:77
#59 0x00007f3d7dcc6707 in g_main_context_dispatch () from /usr/lib64/libglib-2.0.so.0
#60 0x00007f3d7dcc6970 in ?? () from /usr/lib64/libglib-2.0.so.0
---Type <return> to continue, or q <return> to quit---
#61 0x00007f3d7dcc6a1c in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#62 0x00007f3d87f05c2f in QEventDispatcherGlib::processEvents (this=0x5597992a5c40, flags=...) at kernel/qeventdispatcher_glib.cpp:423
#63 0x00007f3d87eaa9c2 in QEventLoop::exec (this=this@entry=0x7fffc1c5b070, flags=..., flags@entry=...) at kernel/qeventloop.cpp:212
#64 0x00007f3d87eb4044 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1289
#65 0x00005597977fc502 in main (argc=<optimized out>, argv=<optimized out>) at /tmp/portage/media-sound/amarok-9999/work/amarok-9999/src/main.cpp:351
Comment 4 Myriam Schweingruber 2018-04-16 23:53:53 UTC
Thank you for the quick response. I am just a bit puzzled as you indicated using Amarok 2.9.0, but "Amarok-9999" on Gentoo usually is from our git master, which is actually the kf5 version, can you confirm this, please?
Comment 5 Lyall 2018-04-17 03:16:58 UTC
Confirmed from Git master. 
Any ebuild in Gentoo version 9999 tends to be from source repositories, not a 'release'.
Gentoo has virtually dropped qt4, hence the attempted move to qt5 version.
Comment 6 Myriam Schweingruber 2018-04-19 11:21:21 UTC
Changing to the kf5 build, then. Just be aware that this is the yet non-released Qt5 port, so changes might happen quite frequently.
Comment 7 Lyall 2018-04-20 06:33:35 UTC
(In reply to Lyall from comment #0)
> Created attachment 111992 [details]
> Portage emerge --info output.
> 
> When starting the podcast download episode, the tmp file is located in the
> podcast directory, but once the download is complete and the file renamed,
> it moves 'up' one directory level.
> Additionally, right click a podcast entry to 'configure' results in a core
> dump, every time.
> Gentoo system, Intel, 64 bit, happy to provide specific version info on
> request.
> Attached emerge info includes various library versions, env variables, etc,
> which may be of use.

Spotted the problem with the Podcast download, when the .tmp file is renamed to it's final name, there is a directory separator missing between the directory and the final mp3 filename.
Comment 8 Myriam Schweingruber 2019-08-04 13:16:39 UTC
*** Bug 410546 has been marked as a duplicate of this bug. ***
Comment 9 Lyall 2022-07-30 02:27:14 UTC
Created attachment 150990 [details]
Debug output - amarok --debug, it's a text file, with colour escape codes, embedded

Ran amarok at the command line
amarok --debug > /tmp/amarok.log 2>&1
Log contains output from start to crash.
Comment 10 Lyall 2022-07-30 02:29:52 UTC
Created attachment 150991 [details]
Screen shots from start to crash

Simple screen shots of parts of the Amarok UI up until crash.
Comment 11 Stephan Schöttl 2023-01-05 09:36:37 UTC
I would like to add that the crash in PodcastSettingsDialog also occurs in this version of amarok on OpenSUSE Linux:

rpm -qi amarok
Name        : amarok
Version     : 2.9.75git.20220614T014846~dc55a00143
Release     : bp154.2.3.1
Architecture: x86_64
Install Date: Mo 18 Jul 2022 09:10:13 CEST
Group       : Productivity/Multimedia/Sound/Players
Size        : 37310264
License     : GPL-2.0-or-later
Signature   : RSA/SHA256, Fr 24 Jun 2022 19:38:55 CEST, Key ID 9c214d4065176565
Source RPM  : amarok-2.9.75git.20220614T014846~dc55a00143-bp154.2.3.1.src.rpm
Build Date  : Fr 24 Jun 2022 19:37:21 CEST
Build Host  : lamb68
Relocations : (not relocatable)
Packager    : http://bugs.opensuse.org
Vendor      : openSUSE
URL         : https://amarok.kde.org/
Summary     : Media Player
Description :
Amarok is a media player for all kinds of media. This includes MP3, Ogg
Vorbis, audio CDs, podcasts and streams. Play lists can be stored in
.m3u or .pls files.
Distribution: SUSE Linux Enterprise 15
Comment 12 Odin Vex 2023-12-06 02:06:16 UTC
The crash is caused by core-impl/podcasts/sql/PodcastSettingsDialog.cpp, specifically "buttonBox()->button(QDialogButtonBox::Apply)->setEnabled". Comment-out every call (3 total) to that and it'll work fine.
Comment 13 Odin Vex 2023-12-06 02:10:32 UTC
(In reply to Odin Vex from comment #12)
> The crash is caused by core-impl/podcasts/sql/PodcastSettingsDialog.cpp,
> specifically "buttonBox()->button(QDialogButtonBox::Apply)->setEnabled".
> Comment-out every call (3 total) to that and it'll work fine.

I didn't have time to peek at the Qt documentation to look into Button Box(es) to determine how best to move forward (aside from commenting them out temporarily). The dialog width and height were also really goofed on my end (AUR clone, edit, cmake ..., make, ran the bin without installation, working).
Comment 14 Tuomas Nurmi 2024-03-03 09:07:31 UTC
Can reproduce. Add a podcast, right click it and select edit from popup menu.
Crash happens because buttonBox() of PodcastSettingsDialog is being called. Although a QDialogButtonBox *buttonBox is constructed in the PodcastSettingsDialog initializer function, it is never set with setButtonBox (https://api.kde.org/frameworks/kwidgetsaddons/html/classKPageDialog.html#a578e1f998bcfefa2ac0420d36fce65b0).
Crash can be avoided by adding

setButtonBox(buttonBox);

as line 42 of src/core-impl/podcasts/sql/PodcastSettingsDialog.cpp

However, the layout of the dialog is still somewhat broken, I'll see if I manage to write up a proper fix for that, too.
Comment 15 Bug Janitor Service 2024-03-03 17:24:33 UTC
A possibly relevant merge request was started @ https://invent.kde.org/multimedia/amarok/-/merge_requests/59
Comment 16 Tuomas Nurmi 2024-03-23 22:42:32 UTC
Git commit 8db1762e7d859aaebb45dd53edeac14c99b27a37 by Tuomas Nurmi.
Committed on 23/03/2024 at 12:17.
Pushed by nurmi into branch 'master'.

Fix crash in PodcastSettingsDialog initialization.

Although a box including an Apply button was created, it was not actually set
as the button box for the dialog, and trying to access an Apply button through
buttonBox() thus always resulted in null.
Additionally, make the UI work by converting the setup to actually use the
functionality provided by KPageDialog. Also remove the connection of accepted
and rejected signals, as according to API docs, they are created automatically.

M  +3    -3    ChangeLog
M  +2    -5    src/core-impl/podcasts/sql/PodcastSettingsDialog.cpp

https://invent.kde.org/multimedia/amarok/-/commit/8db1762e7d859aaebb45dd53edeac14c99b27a37
Comment 17 Odin Vex 2024-03-24 00:08:01 UTC
It's great to see this fixed. I hope this hits the AUR soon.