Bug 332963

Summary: Crash when clicking on a music when the network is unavailable
Product: [Applications] juk Reporter: Arnold Dumas <contact>
Component: generalAssignee: Arnold Dumas <contact>
Status: RESOLVED FIXED    
Severity: crash CC: contact, mpyne
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: Compiled Sources   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description Arnold Dumas 2014-04-02 12:36:15 UTC
JuK crashes when clicking on any music because the network is not available.

Reproducible: Always

Steps to Reproduce:
1. Deactivate your network
2. Fill the last.fm credentials
3. Launch JuK and click on any music
Actual Results:  
It crashes.

Expected Results:  
It shouln't crash.

Application: JuK (juk), signal: Segmentation fault
Using host libthread_db library "/usr/lib/libthread_db.so.1".
To enable execution of this file add
	add-auto-load-safe-path /usr/lib/libstdc++.so.6.0.19-gdb.py
line to your configuration file "/home/arnold/.gdbinit".
To completely disable this security protection add
	set auto-load safe-path /
line to your configuration file "/home/arnold/.gdbinit".
For more information about this security protection see the
"Auto-loading safe path" section in the GDB manual.  E.g., run from the shell:
	info "(gdb)Auto-loading safe path"
[Current thread is 1 (Thread 0x7f748b6f37c0 (LWP 4492))]

Thread 11 (Thread 0x7f746e07b700 (LWP 4494)):
#0  0x00007f748723704f in pthread_cond_wait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
#1  0x00007f7480f7e4e7 in g_cond_wait () from /usr/lib/libglib-2.0.so.0
#2  0x00007f747428b573 in ?? () from /usr/lib/libgstreamer-0.10.so.0
#3  0x00007f7480f63976 in ?? () from /usr/lib/libglib-2.0.so.0
#4  0x00007f7480f62fb5 in ?? () from /usr/lib/libglib-2.0.so.0
#5  0x00007f74872330a2 in start_thread () from /usr/lib/libpthread.so.0
#6  0x00007f748582ad1d in clone () from /usr/lib/libc.so.6

Thread 10 (Thread 0x7f746d87a700 (LWP 4495)):
#0  0x00007f748582235d in poll () from /usr/lib/libc.so.6
#1  0x00007f7480f3e584 in ?? () from /usr/lib/libglib-2.0.so.0
#2  0x00007f7480f3e68c in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#3  0x00007f74875ef685 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#4  0x00007f74875c16cf in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#5  0x00007f74875c19c5 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#6  0x00007f74874c04df in QThread::exec() () from /usr/lib/libQtCore.so.4
#7  0x00007f74874c2b7f in ?? () from /usr/lib/libQtCore.so.4
#8  0x00007f74872330a2 in start_thread () from /usr/lib/libpthread.so.0
#9  0x00007f748582ad1d in clone () from /usr/lib/libc.so.6

Thread 9 (Thread 0x7f7467fff700 (LWP 4496)):
#0  0x00007f748723704f in pthread_cond_wait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
#1  0x00007f7480f7e4e7 in g_cond_wait () from /usr/lib/libglib-2.0.so.0
#2  0x00007f747428b573 in ?? () from /usr/lib/libgstreamer-0.10.so.0
#3  0x00007f7480f63976 in ?? () from /usr/lib/libglib-2.0.so.0
#4  0x00007f7480f62fb5 in ?? () from /usr/lib/libglib-2.0.so.0
#5  0x00007f74872330a2 in start_thread () from /usr/lib/libpthread.so.0
#6  0x00007f748582ad1d in clone () from /usr/lib/libc.so.6

Thread 8 (Thread 0x7f74677fe700 (LWP 4497)):
#0  0x00007f748723704f in pthread_cond_wait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
#1  0x00007f7480f7e4e7 in g_cond_wait () from /usr/lib/libglib-2.0.so.0
#2  0x00007f747428b573 in ?? () from /usr/lib/libgstreamer-0.10.so.0
#3  0x00007f7480f63976 in ?? () from /usr/lib/libglib-2.0.so.0
#4  0x00007f7480f62fb5 in ?? () from /usr/lib/libglib-2.0.so.0
#5  0x00007f74872330a2 in start_thread () from /usr/lib/libpthread.so.0
#6  0x00007f748582ad1d in clone () from /usr/lib/libc.so.6

Thread 7 (Thread 0x7f7466ffd700 (LWP 4498)):
#0  0x00007f748723704f in pthread_cond_wait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
#1  0x00007f7480f7e4e7 in g_cond_wait () from /usr/lib/libglib-2.0.so.0
#2  0x00007f747428b573 in ?? () from /usr/lib/libgstreamer-0.10.so.0
#3  0x00007f7480f63976 in ?? () from /usr/lib/libglib-2.0.so.0
#4  0x00007f7480f62fb5 in ?? () from /usr/lib/libglib-2.0.so.0
#5  0x00007f74872330a2 in start_thread () from /usr/lib/libpthread.so.0
#6  0x00007f748582ad1d in clone () from /usr/lib/libc.so.6

Thread 6 (Thread 0x7f74667fc700 (LWP 4499)):
#0  0x00007f748723704f in pthread_cond_wait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
#1  0x00007f7480f7e4e7 in g_cond_wait () from /usr/lib/libglib-2.0.so.0
#2  0x00007f747428b573 in ?? () from /usr/lib/libgstreamer-0.10.so.0
#3  0x00007f7480f63976 in ?? () from /usr/lib/libglib-2.0.so.0
#4  0x00007f7480f62fb5 in ?? () from /usr/lib/libglib-2.0.so.0
#5  0x00007f74872330a2 in start_thread () from /usr/lib/libpthread.so.0
#6  0x00007f748582ad1d in clone () from /usr/lib/libc.so.6

Thread 5 (Thread 0x7f7465ffb700 (LWP 4500)):
#0  0x00007f748582235d in poll () from /usr/lib/libc.so.6
#1  0x00007f7474797d46 in ?? () from /usr/lib/libasound.so.2
#2  0x00007f74712f1abd in ?? () from /usr/lib/gstreamer-0.10/libgstalsa.so
#3  0x00007f7471093c1c in ?? () from /usr/lib/libgstaudio-0.10.so.0
#4  0x00007f7480f62fb5 in ?? () from /usr/lib/libglib-2.0.so.0
#5  0x00007f74872330a2 in start_thread () from /usr/lib/libpthread.so.0
#6  0x00007f748582ad1d in clone () from /usr/lib/libc.so.6

Thread 4 (Thread 0x7f74657fa700 (LWP 4501)):
#0  0x00007f74872373f8 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
#1  0x00007f7480f7e5d5 in g_cond_wait_until () from /usr/lib/libglib-2.0.so.0
#2  0x00007f7480f14d51 in ?? () from /usr/lib/libglib-2.0.so.0
#3  0x00007f7480f152db in g_async_queue_timeout_pop () from /usr/lib/libglib-2.0.so.0
#4  0x00007f7480f63a46 in ?? () from /usr/lib/libglib-2.0.so.0
#5  0x00007f7480f62fb5 in ?? () from /usr/lib/libglib-2.0.so.0
#6  0x00007f74872330a2 in start_thread () from /usr/lib/libpthread.so.0
#7  0x00007f748582ad1d in clone () from /usr/lib/libc.so.6

Thread 3 (Thread 0x7f7464ff9700 (LWP 4502)):
#0  0x00007f748582235d in poll () from /usr/lib/libc.so.6
#1  0x00007f7480f3e584 in ?? () from /usr/lib/libglib-2.0.so.0
#2  0x00007f7480f3e68c in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#3  0x00007f74875ef685 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#4  0x00007f74875c16cf in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#5  0x00007f74875c19c5 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#6  0x00007f74874c04df in QThread::exec() () from /usr/lib/libQtCore.so.4
#7  0x00007f74874c2b7f in ?? () from /usr/lib/libQtCore.so.4
#8  0x00007f74872330a2 in start_thread () from /usr/lib/libpthread.so.0
#9  0x00007f748582ad1d in clone () from /usr/lib/libc.so.6

Thread 2 (Thread 0x7f7443fff700 (LWP 4503)):
#0  0x00007f74872373f8 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
#1  0x00007f74874c3034 in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/libQtCore.so.4
#2  0x00007f74874b6745 in ?? () from /usr/lib/libQtCore.so.4
#3  0x00007f74874c2b7f in ?? () from /usr/lib/libQtCore.so.4
#4  0x00007f74872330a2 in start_thread () from /usr/lib/libpthread.so.0
#5  0x00007f748582ad1d in clone () from /usr/lib/libc.so.6

Thread 1 (Thread 0x7f748b6f37c0 (LWP 4492)):
[KCrash Handler]
#5  0x00007f7488f4c0e1 in QNetworkAccessManager::post(QNetworkRequest const&, QIODevice*) () from /usr/lib/libQtNetwork.so.4
#6  0x00007f7488f4c16c in QNetworkAccessManager::post(QNetworkRequest const&, QByteArray const&) () from /usr/lib/libQtNetwork.so.4
#7  0x00000000004adbff in Scrobbler::post (this=this@entry=0x15b0d90, params=...) at /home/arnold/Documents/KDE/juk/scrobbler.cpp:330
#8  0x00000000004b3434 in Scrobbler::nowPlaying (this=0x15b0d90, file=...) at /home/arnold/Documents/KDE/juk/scrobbler.cpp:269
#9  0x0000000000430281 in Scrobbler::qt_static_metacall (_o=0x0, _c=4039039872, _id=17434080, _a=0x7f7485ae7620 <main_arena>) at /home/arnold/Documents/KDE/juk/build/moc_scrobbler.cpp:63
#10 0x00007f74875d66ea in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/libQtCore.so.4
#11 0x0000000000485ec3 in signalItemChanged (_t1=..., this=0xe981a0) at /home/arnold/Documents/KDE/juk/build/playermanager.moc:254
#12 PlayerManager::play (this=this@entry=0xe981a0, file=...) at /home/arnold/Documents/KDE/juk/playermanager.cpp:254
#13 0x0000000000486126 in PlayerManager::forward (this=0xe981a0) at /home/arnold/Documents/KDE/juk/playermanager.cpp:372
#14 0x0000000000486d5d in PlayerManager::qt_static_metacall (_o=<optimized out>, _id=<optimized out>, _a=<optimized out>, _c=<optimized out>) at /home/arnold/Documents/KDE/juk/build/playermanager.moc:128
#15 0x00007f74875d66ea in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/libQtCore.so.4
#16 0x00007f74864c9db2 in QAction::triggered(bool) () from /usr/lib/libQtGui.so.4
#17 0x00007f74864cb783 in QAction::activate(QAction::ActionEvent) () from /usr/lib/libQtGui.so.4
#18 0x0000000000488049 in trigger (this=<optimized out>) at /usr/include/qt4/QtGui/qaction.h:218
#19 Playlist::slotPlayCurrent (this=<optimized out>) at /home/arnold/Documents/KDE/juk/playlist.cpp:2375
#20 0x00000000004956e5 in Playlist::qt_static_metacall (_o=0xfc7d20, _id=-255927424, _a=0x10a05e0, _c=<optimized out>) at /home/arnold/Documents/KDE/juk/build/playlist.moc:149
#21 0x00007f74875d66ea in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/libQtCore.so.4
#22 0x00007f7489b55ce2 in Q3ListView::doubleClicked(Q3ListViewItem*) () from /usr/lib/libQt3Support.so.4
#23 0x00007f748a640909 in K3ListView::contentsMouseDoubleClickEvent(QMouseEvent*) () from /usr/lib/libkde3support.so.4
#24 0x00007f7489a82ccc in Q3ScrollView::viewportMouseDoubleClickEvent(QMouseEvent*) () from /usr/lib/libQt3Support.so.4
#25 0x00007f7489a814d6 in Q3ScrollView::eventFilter(QObject*, QEvent*) () from /usr/lib/libQt3Support.so.4
#26 0x00007f7489a3929e in Q3ListView::eventFilter(QObject*, QEvent*) () from /usr/lib/libQt3Support.so.4
#27 0x0000000000493dcb in Playlist::eventFilter (this=0xfc7d20, watched=0xfc86a0, e=0x7ffff0beec10) at /home/arnold/Documents/KDE/juk/playlist.cpp:1141
#28 0x00007f74875c2bd6 in QCoreApplicationPrivate::sendThroughObjectEventFilters(QObject*, QEvent*) () from /usr/lib/libQtCore.so.4
#29 0x00007f74864cfeec in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQtGui.so.4
#30 0x00007f74864d660d in QApplication::notify(QObject*, QEvent*) () from /usr/lib/libQtGui.so.4
#31 0x00007f748828e88a in KApplication::notify(QObject*, QEvent*) () from /usr/lib/libkdeui.so.5
#32 0x00007f74875c2a6d in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/libQtCore.so.4
#33 0x00007f74864d5dc3 in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool) () from /usr/lib/libQtGui.so.4
#34 0x00007f748654794b in ?? () from /usr/lib/libQtGui.so.4
#35 0x00007f74865463bc in QApplication::x11ProcessEvent(_XEvent*) () from /usr/lib/libQtGui.so.4
#36 0x00007f748656cef2 in ?? () from /usr/lib/libQtGui.so.4
#37 0x00007f7480f3e296 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#38 0x00007f7480f3e5e8 in ?? () from /usr/lib/libglib-2.0.so.0
#39 0x00007f7480f3e68c in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#40 0x00007f74875ef685 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#41 0x00007f748656cfa6 in ?? () from /usr/lib/libQtGui.so.4
#42 0x00007f74875c16cf in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#43 0x00007f74875c19c5 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#44 0x00007f74875c6ae9 in QCoreApplication::exec() () from /usr/lib/libQtCore.so.4
#45 0x000000000042f228 in main (argc=1, argv=0x7ffff0befaf8) at /home/arnold/Documents/KDE/juk/main.cpp:111
Comment 1 Arnold Dumas 2014-04-03 05:21:42 UTC
Git commit 3d76bf881cbb0b4cb4416db7ce052758853947da by Arnold Dumas.
Committed on 03/04/2014 at 05:16.
Pushed by arnolddumas into branch 'master'.

Don't crash when clicking on a music when the network is unavailable and the scrobbling is set up.
REVIEW: 117334

M  +4    -0    scrobbler.cpp

http://commits.kde.org/juk/3d76bf881cbb0b4cb4416db7ce052758853947da