Bug 389937 - Crash while Clicking on "Albums"
Summary: Crash while Clicking on "Albums"
Status: RESOLVED FIXED
Alias: None
Product: juk
Classification: Applications
Component: general (show other bugs)
Version: unspecified
Platform: openSUSE Linux
: NOR crash
Target Milestone: ---
Assignee: Scott Wheeler
URL:
Keywords: drkonqi
Depends on:
Blocks:
 
Reported: 2018-02-06 03:07 UTC by Tony
Modified: 2018-02-11 00:05 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In: 17.12.3


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Tony 2018-02-06 03:07:52 UTC
Application: juk (18.03.70)

Qt Version: 5.10.0
Frameworks Version: 5.43.0
Operating System: Linux 4.15.0-1-default x86_64
Distribution: "openSUSE Tumbleweed"

-- Information about the crash:
- What I was doing when the application crashed:
Expanded the collections tree, clicked on "Albums". There is not need to be reproducing/playing any song.

The crash can be reproduced every time.

-- Backtrace:
Application: JuK (juk), signal: Segmentation fault
Using host libthread_db library "/lib64/libthread_db.so.1".
[Current thread is 1 (Thread 0x7fc46db018c0 (LWP 866))]

Thread 4 (Thread 0x7fc43a17f700 (LWP 872)):
#0  0x00007fc467b99a78 in __GI___libc_read (fd=fd@entry=14, buf=buf@entry=0x7fc43a17eb2e, nbytes=nbytes@entry=10) at ../sysdeps/unix/sysv/linux/read.c:26
#1  0x00007fc4616e9751 in read (__nbytes=10, __buf=0x7fc43a17eb2e, __fd=14) at /usr/include/bits/unistd.h:44
#2  pa_read (fd=14, buf=buf@entry=0x7fc43a17eb2e, count=count@entry=10, type=type@entry=0x564dcd90d018) at pulsecore/core-util.c:434
#3  0x00007fc46400ddde in clear_wakeup (m=<optimized out>) at pulse/mainloop.c:781
#4  pa_mainloop_prepare (m=m@entry=0x564dcd90cf40, timeout=-1) at pulse/mainloop.c:789
#5  0x00007fc46400e850 in pa_mainloop_iterate (m=0x564dcd90cf40, block=<optimized out>, retval=0x0) at pulse/mainloop.c:923
#6  0x00007fc46400e910 in pa_mainloop_run (m=0x564dcd90cf40, retval=retval@entry=0x0) at pulse/mainloop.c:944
#7  0x00007fc46401c779 in thread (userdata=0x564dcd8a82e0) at pulse/thread-mainloop.c:100
#8  0x00007fc461718438 in internal_thread_func (userdata=0x564dcd89d480) at pulsecore/thread-posix.c:81
#9  0x00007fc465847558 in start_thread (arg=0x7fc43a17f700) at pthread_create.c:465
#10 0x00007fc467ba872f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 3 (Thread 0x7fc447d87700 (LWP 870)):
#0  0x00007fc462043759 in g_mutex_lock () from /usr/lib64/libglib-2.0.so.0
#1  0x00007fc461ffd4d5 in g_main_context_prepare () from /usr/lib64/libglib-2.0.so.0
#2  0x00007fc461ffe03b in ?? () from /usr/lib64/libglib-2.0.so.0
#3  0x00007fc461ffe21c in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#4  0x00007fc468a4278b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQt5Core.so.5
#5  0x00007fc4689e96ba in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQt5Core.so.5
#6  0x00007fc4688108da in QThread::exec() () from /usr/lib64/libQt5Core.so.5
#7  0x00007fc4688158d0 in QThreadPrivate::start(void*) () from /usr/lib64/libQt5Core.so.5
#8  0x00007fc465847558 in start_thread (arg=0x7fc447d87700) at pthread_create.c:465
#9  0x00007fc467ba872f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 2 (Thread 0x7fc45211f700 (LWP 869)):
#0  0x00007fc467b99a78 in __GI___libc_read (fd=6, buf=0x7fc45211eae0, nbytes=16) at ../sysdeps/unix/sysv/linux/read.c:26
#1  0x00007fc462042420 in ?? () from /usr/lib64/libglib-2.0.so.0
#2  0x00007fc461ffdbf7 in g_main_context_check () from /usr/lib64/libglib-2.0.so.0
#3  0x00007fc461ffe0b0 in ?? () from /usr/lib64/libglib-2.0.so.0
#4  0x00007fc461ffe21c in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#5  0x00007fc468a4278b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQt5Core.so.5
#6  0x00007fc4689e96ba in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQt5Core.so.5
#7  0x00007fc4688108da in QThread::exec() () from /usr/lib64/libQt5Core.so.5
#8  0x00007fc468e67bd5 in QDBusConnectionManager::run() () from /usr/lib64/libQt5DBus.so.5
#9  0x00007fc4688158d0 in QThreadPrivate::start(void*) () from /usr/lib64/libQt5Core.so.5
#10 0x00007fc465847558 in start_thread (arg=0x7fc45211f700) at pthread_create.c:465
#11 0x00007fc467ba872f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 1 (Thread 0x7fc46db018c0 (LWP 866)):
[KCrash Handler]
#6  StatusLabel::slotCurrentPlaylistHasChanged (this=0x564dcd6a45d0, currentPlaylist=...) at /usr/src/debug/juk-18.03.80git.20180202T003602~86f84e9-36.1.x86_64/statuslabel.cpp:109
#7  0x00007fc468a190cc in QMetaObject::activate(QObject*, int, int, void**) () from /usr/lib64/libQt5Core.so.5
#8  0x0000564dcb57d695 in PlaylistSplitter::currentPlaylistChanged (this=<optimized out>, _t1=...) at /usr/src/debug/juk-18.03.80git.20180202T003602~86f84e9-36.1.x86_64/build/juk_autogen/EWIEGA46WW/moc_playlistsplitter.cpp:187
#9  0x00007fc468a190cc in QMetaObject::activate(QObject*, int, int, void**) () from /usr/lib64/libQt5Core.so.5
#10 0x00007fc469c9a7ee in QTreeWidget::currentItemChanged(QTreeWidgetItem*, QTreeWidgetItem*) () from /usr/lib64/libQt5Widgets.so.5
#11 0x00007fc468a18fca in QMetaObject::activate(QObject*, int, int, void**) () from /usr/lib64/libQt5Core.so.5
#12 0x00007fc4689995ca in QItemSelectionModel::currentChanged(QModelIndex const&, QModelIndex const&) () from /usr/lib64/libQt5Core.so.5
#13 0x00007fc4689997ee in QItemSelectionModel::setCurrentIndex(QModelIndex const&, QFlags<QItemSelectionModel::SelectionFlag>) () from /usr/lib64/libQt5Core.so.5
#14 0x00007fc469c2f3fc in QAbstractItemView::mousePressEvent(QMouseEvent*) () from /usr/lib64/libQt5Widgets.so.5
#15 0x00007fc469c9774b in QTreeView::mousePressEvent(QMouseEvent*) () from /usr/lib64/libQt5Widgets.so.5
#16 0x00007fc469a34c39 in QWidget::event(QEvent*) () from /usr/lib64/libQt5Widgets.so.5
#17 0x00007fc469ad20de in QFrame::event(QEvent*) () from /usr/lib64/libQt5Widgets.so.5
#18 0x00007fc469c33f6c in QAbstractItemView::viewportEvent(QEvent*) () from /usr/lib64/libQt5Widgets.so.5
#19 0x00007fc469c9721c in QTreeView::viewportEvent(QEvent*) () from /usr/lib64/libQt5Widgets.so.5
#20 0x00007fc4689eabb4 in QCoreApplicationPrivate::sendThroughObjectEventFilters(QObject*, QEvent*) () from /usr/lib64/libQt5Core.so.5
#21 0x00007fc4699f7ee5 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib64/libQt5Widgets.so.5
#22 0x00007fc4699ff75f in QApplication::notify(QObject*, QEvent*) () from /usr/lib64/libQt5Widgets.so.5
#23 0x00007fc4689eaea8 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /usr/lib64/libQt5Core.so.5
#24 0x00007fc4699fe7af in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool) () from /usr/lib64/libQt5Widgets.so.5
#25 0x00007fc469a4e57b in QWidgetWindow::handleMouseEvent(QMouseEvent*) () from /usr/lib64/libQt5Widgets.so.5
#26 0x00007fc469a509a1 in QWidgetWindow::event(QEvent*) () from /usr/lib64/libQt5Widgets.so.5
#27 0x00007fc4699f7f0c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib64/libQt5Widgets.so.5
#28 0x00007fc4699ff204 in QApplication::notify(QObject*, QEvent*) () from /usr/lib64/libQt5Widgets.so.5
#29 0x00007fc4689eaea8 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /usr/lib64/libQt5Core.so.5
#30 0x00007fc4691f502c in QGuiApplicationPrivate::processMouseEvent(QWindowSystemInterfacePrivate::MouseEvent*) () from /usr/lib64/libQt5Gui.so.5
#31 0x00007fc4691f6975 in QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent*) () from /usr/lib64/libQt5Gui.so.5
#32 0x00007fc4691cfdfb in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQt5Gui.so.5
#33 0x00007fc45c7aefbb in QPAEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQt5XcbQpa.so.5
#34 0x00007fc4689e96ba in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQt5Core.so.5
#35 0x00007fc4689f21f4 in QCoreApplication::exec() () from /usr/lib64/libQt5Core.so.5
#36 0x0000564dcb4be3cf in main (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/juk-18.03.80git.20180202T003602~86f84e9-36.1.x86_64/main.cpp:122

Reported using DrKonqi
Comment 1 mwc85.23yp 2018-02-08 05:21:08 UTC
I'm also seeing this problem on Fedora 27 (rpm: juk-17.12.1-2.fc27):
287> juk --version
juk 17.12.1
288> 

Trying to expand any menu item in "Collections List" results in crash. Looks playlist-related:

org.kde.juk: void LyricsWidget::receiveLyricsReply(QNetworkReply*) Unable to find lyrics in text

Thread 1 "juk" received signal SIGSEGV, Segmentation fault.
0x0000555555626c65 in StatusLabel::slotCurrentPlaylistHasChanged(PlaylistInterface const&) ()
Comment 2 Michael Pyne 2018-02-08 05:24:16 UTC
Thanks for the report, I'll take a look later this week when I return from travel.  I don't actually use the Tree View myself so it's quite possible that it didn't survive the port to KF5 in quite the way it was supposed to.
Comment 3 Michael Pyne 2018-02-11 00:05:49 UTC
Git commit 5982cede97993bf6cb81b80ef136b42c032382a5 by Michael Pyne.
Committed on 10/02/2018 at 22:46.
Pushed by mpyne into branch 'Applications/17.12'.

Avoid crash on tree view mode by disabling tree view mode :(

I can't decipher the brokenness here in a way that will lead to a quick
fix, so disable the broken feature for now to avoid causing needless
crashes for a feature that currently doesn't work at all.
FIXED-IN:17.12.3

M  +8    -0    playlistbox.cpp

https://commits.kde.org/juk/5982cede97993bf6cb81b80ef136b42c032382a5