Bug 315525 - Amarok crash on close
Summary: Amarok crash on close
Status: RESOLVED FIXED
Alias: None
Product: amarok
Classification: Applications
Component: Tools/Statistics Synchronization (show other bugs)
Version: 2.7.0
Platform: Debian stable Linux
: NOR crash
Target Milestone: 2.8
Assignee: Amarok Developers
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-02-20 16:41 UTC by Daniel Phillips
Modified: 2013-02-21 14:16 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In: 2.8


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Daniel Phillips 2013-02-20 16:41:41 UTC
Application: amarok (2.7.0)
KDE Platform Version: 4.9.5
Qt Version: 4.8.2
Operating System: Linux 3.2.0-2-amd64 x86_64
Distribution: Debian GNU/Linux 7.0 (wheezy)

-- Information about the crash:
Open Amarok then closed it. Immediately crashed with seg fault.

The crash can be reproduced some of the time.

-- Backtrace:
Application: Amarok (amarok), signal: Segmentation fault
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[Current thread is 1 (Thread 0x7f482a973780 (LWP 15608))]

Thread 10 (Thread 0x7f47fc9c9700 (LWP 15613)):
#0  __pthread_mutex_lock (mutex=0x28e76c0) at pthread_mutex_lock.c:51
#1  0x00007f4820963421 in g_mutex_lock () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f4820927525 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f4820927744 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#4  0x00007f4827b75296 in QEventDispatcherGlib::processEvents (this=0x28fe600, flags=...) at kernel/qeventdispatcher_glib.cpp:426
#5  0x00007f4827b458af in QEventLoop::processEvents (this=this@entry=0x7f47fc9c8df0, flags=...) at kernel/qeventloop.cpp:149
#6  0x00007f4827b45b38 in QEventLoop::exec (this=0x7f47fc9c8df0, flags=...) at kernel/qeventloop.cpp:204
#7  0x00007f4827a48d70 in QThread::exec (this=<optimized out>) at thread/qthread.cpp:501
#8  0x00007f4827b261bf in QInotifyFileSystemWatcherEngine::run (this=0x29d2b40) at io/qfilesystemwatcher_inotify.cpp:248
#9  0x00007f4827a4bd0b in QThreadPrivate::start (arg=0x29d2b40) at thread/qthread_unix.cpp:307
#10 0x00007f4820df5b50 in start_thread (arg=<optimized out>) at pthread_create.c:304
#11 0x00007f48271fda7d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#12 0x0000000000000000 in ?? ()

Thread 9 (Thread 0x7f47fac98700 (LWP 15614)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00007f4827a4c20b in wait (time=18446744073709551615, this=0x28e3c40) at thread/qwaitcondition_unix.cpp:86
#2  QWaitCondition::wait (this=<optimized out>, mutex=0x28e3dc0, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:158
#3  0x00007f4824fa5301 in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned (this=0x28e41d0, th=0x28e3990) at ../../../threadweaver/Weaver/WeaverImpl.cpp:365
#4  0x00007f4824fa7b4b in ThreadWeaver::WorkingHardState::applyForWork (this=0x28e4860, th=0x28e3990) at ../../../threadweaver/Weaver/WorkingHardState.cpp:71
#5  0x00007f4824fa7b64 in ThreadWeaver::WorkingHardState::applyForWork (this=0x28e4860, th=0x28e3990) at ../../../threadweaver/Weaver/WorkingHardState.cpp:74
#6  0x00007f4824fa69bf in ThreadWeaver::ThreadRunHelper::run (this=this@entry=0x7f47fac97e20, parent=0x28e41d0, th=th@entry=0x28e3990) at ../../../threadweaver/Weaver/Thread.cpp:87
#7  0x00007f4824fa6a4b in ThreadWeaver::Thread::run (this=0x28e3990) at ../../../threadweaver/Weaver/Thread.cpp:142
#8  0x00007f4827a4bd0b in QThreadPrivate::start (arg=0x28e3990) at thread/qthread_unix.cpp:307
#9  0x00007f4820df5b50 in start_thread (arg=<optimized out>) at pthread_create.c:304
#10 0x00007f48271fda7d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#11 0x0000000000000000 in ?? ()

Thread 8 (Thread 0x7f47fa497700 (LWP 15615)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00007f4827a4c20b in wait (time=18446744073709551615, this=0x7f47f4017bd0) at thread/qwaitcondition_unix.cpp:86
#2  QWaitCondition::wait (this=<optimized out>, mutex=0x7f47f403e190, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:158
#3  0x00007f4827a481c7 in QSemaphore::acquire (this=0x7f47f4081b80, n=1) at thread/qsemaphore.cpp:144
#4  0x00007f48298f8174 in ?? () from /usr/lib/libamaroklib.so.1
#5  0x00007f48298fc6a8 in ?? () from /usr/lib/libamaroklib.so.1
#6  0x00007f48298fd83d in ?? () from /usr/lib/libamaroklib.so.1
#7  0x00007f4824fa71ba in ThreadWeaver::JobRunHelper::runTheJob (this=this@entry=0x7f47fa496dd0, th=th@entry=0x28b6320, job=job@entry=0x7f47f4b3b680) at ../../../threadweaver/Weaver/Job.cpp:106
#8  0x00007f4824fa7331 in ThreadWeaver::Job::execute (this=0x7f47f4b3b680, th=0x28b6320) at ../../../threadweaver/Weaver/Job.cpp:135
#9  0x00007f4824fa698f in ThreadWeaver::ThreadRunHelper::run (this=this@entry=0x7f47fa496e20, parent=0x28e41d0, th=th@entry=0x28b6320) at ../../../threadweaver/Weaver/Thread.cpp:95
#10 0x00007f4824fa6a4b in ThreadWeaver::Thread::run (this=0x28b6320) at ../../../threadweaver/Weaver/Thread.cpp:142
#11 0x00007f4827a4bd0b in QThreadPrivate::start (arg=0x28b6320) at thread/qthread_unix.cpp:307
#12 0x00007f4820df5b50 in start_thread (arg=<optimized out>) at pthread_create.c:304
#13 0x00007f48271fda7d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#14 0x0000000000000000 in ?? ()

Thread 7 (Thread 0x7f47f9c96700 (LWP 15616)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00007f4827a4c20b in wait (time=18446744073709551615, this=0x28e3c40) at thread/qwaitcondition_unix.cpp:86
#2  QWaitCondition::wait (this=<optimized out>, mutex=0x28e3dc0, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:158
#3  0x00007f4824fa5301 in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned (this=0x28e41d0, th=0x26594d0) at ../../../threadweaver/Weaver/WeaverImpl.cpp:365
#4  0x00007f4824fa7b4b in ThreadWeaver::WorkingHardState::applyForWork (this=0x28e4860, th=0x26594d0) at ../../../threadweaver/Weaver/WorkingHardState.cpp:71
#5  0x00007f4824fa69bf in ThreadWeaver::ThreadRunHelper::run (this=this@entry=0x7f47f9c95e20, parent=0x28e41d0, th=th@entry=0x26594d0) at ../../../threadweaver/Weaver/Thread.cpp:87
#6  0x00007f4824fa6a4b in ThreadWeaver::Thread::run (this=0x26594d0) at ../../../threadweaver/Weaver/Thread.cpp:142
#7  0x00007f4827a4bd0b in QThreadPrivate::start (arg=0x26594d0) at thread/qthread_unix.cpp:307
#8  0x00007f4820df5b50 in start_thread (arg=<optimized out>) at pthread_create.c:304
#9  0x00007f48271fda7d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#10 0x0000000000000000 in ?? ()

Thread 6 (Thread 0x7f47f9495700 (LWP 15617)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00007f4827a4c20b in wait (time=18446744073709551615, this=0x28e3c40) at thread/qwaitcondition_unix.cpp:86
#2  QWaitCondition::wait (this=<optimized out>, mutex=0x28e3dc0, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:158
#3  0x00007f4824fa5301 in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned (this=0x28e41d0, th=0x28ff250) at ../../../threadweaver/Weaver/WeaverImpl.cpp:365
#4  0x00007f4824fa7b4b in ThreadWeaver::WorkingHardState::applyForWork (this=0x28e4860, th=0x28ff250) at ../../../threadweaver/Weaver/WorkingHardState.cpp:71
#5  0x00007f4824fa7b64 in ThreadWeaver::WorkingHardState::applyForWork (this=0x28e4860, th=0x28ff250) at ../../../threadweaver/Weaver/WorkingHardState.cpp:74
#6  0x00007f4824fa7b64 in ThreadWeaver::WorkingHardState::applyForWork (this=0x28e4860, th=0x28ff250) at ../../../threadweaver/Weaver/WorkingHardState.cpp:74
#7  0x00007f4824fa69bf in ThreadWeaver::ThreadRunHelper::run (this=this@entry=0x7f47f9494e20, parent=0x28e41d0, th=th@entry=0x28ff250) at ../../../threadweaver/Weaver/Thread.cpp:87
#8  0x00007f4824fa6a4b in ThreadWeaver::Thread::run (this=0x28ff250) at ../../../threadweaver/Weaver/Thread.cpp:142
#9  0x00007f4827a4bd0b in QThreadPrivate::start (arg=0x28ff250) at thread/qthread_unix.cpp:307
#10 0x00007f4820df5b50 in start_thread (arg=<optimized out>) at pthread_create.c:304
#11 0x00007f48271fda7d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#12 0x0000000000000000 in ?? ()

Thread 5 (Thread 0x7f47f3de1700 (LWP 15618)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00007f481d245ebd in ?? () from /usr/lib/x86_64-linux-gnu/libQtWebKit.so.4
#2  0x00007f481d245fc9 in ?? () from /usr/lib/x86_64-linux-gnu/libQtWebKit.so.4
#3  0x00007f4820df5b50 in start_thread (arg=<optimized out>) at pthread_create.c:304
#4  0x00007f48271fda7d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#5  0x0000000000000000 in ?? ()

Thread 4 (Thread 0x7f47eb938700 (LWP 15622)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00007f4823fe1e77 in ?? () from /usr/lib/x86_64-linux-gnu/libQtScript.so.4
#2  0x00007f4823fe1ea9 in ?? () from /usr/lib/x86_64-linux-gnu/libQtScript.so.4
#3  0x00007f4820df5b50 in start_thread (arg=<optimized out>) at pthread_create.c:304
#4  0x00007f48271fda7d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#5  0x0000000000000000 in ?? ()

Thread 3 (Thread 0x7f47f07cb700 (LWP 15625)):
#0  pthread_cond_timedwait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:216
#1  0x00007f4827a4c167 in wait (time=30000, this=0x291f380) at thread/qwaitcondition_unix.cpp:84
#2  QWaitCondition::wait (this=<optimized out>, mutex=0x2912828, time=30000) at thread/qwaitcondition_unix.cpp:158
#3  0x00007f4827a3f7af in QThreadPoolThread::run (this=0x7f47f418a3c0) at concurrent/qthreadpool.cpp:141
#4  0x00007f4827a4bd0b in QThreadPrivate::start (arg=0x7f47f418a3c0) at thread/qthread_unix.cpp:307
#5  0x00007f4820df5b50 in start_thread (arg=<optimized out>) at pthread_create.c:304
#6  0x00007f48271fda7d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#7  0x0000000000000000 in ?? ()

Thread 2 (Thread 0x7f47ef186700 (LWP 15628)):
#0  pthread_cond_timedwait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:216
#1  0x00007f4827a4c167 in wait (time=30000, this=0x291f380) at thread/qwaitcondition_unix.cpp:84
#2  QWaitCondition::wait (this=<optimized out>, mutex=0x2912828, time=30000) at thread/qwaitcondition_unix.cpp:158
#3  0x00007f4827a3f7af in QThreadPoolThread::run (this=0x7f47f4254450) at concurrent/qthreadpool.cpp:141
#4  0x00007f4827a4bd0b in QThreadPrivate::start (arg=0x7f47f4254450) at thread/qthread_unix.cpp:307
#5  0x00007f4820df5b50 in start_thread (arg=<optimized out>) at pthread_create.c:304
#6  0x00007f48271fda7d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#7  0x0000000000000000 in ?? ()

Thread 1 (Thread 0x7f482a973780 (LWP 15608)):
[KCrash Handler]
#6  0x00007f482874e129 in QRasterWindowSurface::~QRasterWindowSurface (this=0x7f47f4456b50, __in_chrg=<optimized out>) at painting/qwindowsurface_raster.cpp:117
#7  0x00007f482874e1a9 in QRasterWindowSurface::~QRasterWindowSurface (this=0x7f47f4456b50, __in_chrg=<optimized out>) at painting/qwindowsurface_raster.cpp:121
#8  0x00007f4828766dbe in QWidgetBackingStore::~QWidgetBackingStore (this=0x7f47f4b02d10, __in_chrg=<optimized out>) at painting/qbackingstore.cpp:909
#9  0x00007f482859de19 in QWidgetBackingStoreTracker::destroy (this=0x7f47f4b02c60) at kernel/qwidget.cpp:217
#10 0x00007f482859df62 in QWidgetPrivate::deleteExtra (this=this@entry=0x7f47f4b494d0) at kernel/qwidget.cpp:1831
#11 0x00007f482859e17d in QWidgetPrivate::~QWidgetPrivate (this=0x7f47f4b494d0, __in_chrg=<optimized out>) at kernel/qwidget.cpp:357
#12 0x00007f48289f7b3b in ~QDialogPrivate (this=0x7f47f4b494d0, __in_chrg=<optimized out>) at ../../include/QtGui/private/../../../src/gui/dialogs/qdialog_p.h:66
#13 QDialogPrivate::~QDialogPrivate (this=0x7f47f4b494d0, __in_chrg=<optimized out>) at ../../include/QtGui/private/../../../src/gui/dialogs/qdialog_p.h:66
#14 0x00007f4827b5d5ec in cleanup (pointer=<optimized out>) at ../../include/QtCore/../../src/corelib/tools/qscopedpointer.h:62
#15 ~QScopedPointer (this=0x7f47f4646d08, __in_chrg=<optimized out>) at ../../include/QtCore/../../src/corelib/tools/qscopedpointer.h:100
#16 QObject::~QObject (this=0x7f47f4646d00, __in_chrg=<optimized out>) at kernel/qobject.cpp:817
#17 0x00007f48285a0270 in QWidget::~QWidget (this=0x7f47f4646d00, __in_chrg=<optimized out>) at kernel/qwidget.cpp:1552
#18 0x00007f482a2eef09 in KDialog::~KDialog (this=0x7f47f4646d00, __in_chrg=<optimized out>) at ../../kdeui/dialogs/kdialog.cpp:204
#19 0x00007f48298eda86 in ?? () from /usr/lib/libamaroklib.so.1
#20 0x00007f48298edbb9 in ?? () from /usr/lib/libamaroklib.so.1
#21 0x00007f4827b59772 in QObjectPrivate::deleteChildren (this=this@entry=0x25f65b0) at kernel/qobject.cpp:1908
#22 0x00007f4827b5d5b6 in QObject::~QObject (this=0x26a6e90, __in_chrg=<optimized out>) at kernel/qobject.cpp:927
#23 0x00007f48298e9e09 in StatSyncing::Controller::~Controller() () from /usr/lib/libamaroklib.so.1
#24 0x00007f4827b59772 in QObjectPrivate::deleteChildren (this=this@entry=0x246c270) at kernel/qobject.cpp:1908
#25 0x00007f4827b5d5b6 in QObject::~QObject (this=0x7fffb6dd4890, __in_chrg=<optimized out>) at kernel/qobject.cpp:927
#26 0x00007f482855fa91 in QApplication::~QApplication (this=0x7fffb6dd4890, __in_chrg=<optimized out>) at kernel/qapplication.cpp:1100
#27 0x00007f482992e280 in App::~App() () from /usr/lib/libamaroklib.so.1
#28 0x0000000000409339 in ?? ()
#29 0x00007f4827141ead in __libc_start_main (main=<optimized out>, argc=<optimized out>, ubp_av=<optimized out>, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7fffb6dd49e8) at libc-start.c:228
#30 0x000000000040bdfd in _start ()

This bug may be a duplicate of or related to bug 310006.

Possible duplicates by query: bug 310006, bug 295018.

Reported using DrKonqi
Comment 1 Myriam Schweingruber 2013-02-20 17:20:27 UTC
> #19 0x00007f48298eda86 in ?? () from /usr/lib/libamaroklib.so.1

Please isntall the Amarok debugging symbols and provide a batter backtrace.
Comment 2 Daniel Phillips 2013-02-20 17:55:33 UTC
Backtrace:

Application: Amarok (amarok), signal: Segmentation fault
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[Current thread is 1 (Thread 0x7ffff7f9b780 (LWP 6350))]

Thread 8 (Thread 0x7fffca0d0700 (LWP 6355)):
#0  0x00007ffff481be33 in *__GI___poll (fds=<optimized out>, nfds=<optimized out>, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:87
#1  0x00007fffedf50624 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007fffedf50744 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007ffff519e296 in QEventDispatcherGlib::processEvents (this=0xebd7e0, flags=...) at kernel/qeventdispatcher_glib.cpp:426
#4  0x00007ffff516e8af in QEventLoop::processEvents (this=this@entry=0x7fffca0cfdf0, flags=...) at kernel/qeventloop.cpp:149
#5  0x00007ffff516eb38 in QEventLoop::exec (this=0x7fffca0cfdf0, flags=...) at kernel/qeventloop.cpp:204
#6  0x00007ffff5071d70 in QThread::exec (this=<optimized out>) at thread/qthread.cpp:501
#7  0x00007ffff514f1bf in QInotifyFileSystemWatcherEngine::run (this=0xebc1b0) at io/qfilesystemwatcher_inotify.cpp:248
#8  0x00007ffff5074d0b in QThreadPrivate::start (arg=0xebc1b0) at thread/qthread_unix.cpp:307
#9  0x00007fffee41eb50 in start_thread (arg=<optimized out>) at pthread_create.c:304
#10 0x00007ffff4826a7d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#11 0x0000000000000000 in ?? ()

Thread 7 (Thread 0x7fffc3fff700 (LWP 6356)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00007ffff507520b in wait (time=18446744073709551615, this=0x7fffc4028f20) at thread/qwaitcondition_unix.cpp:86
#2  QWaitCondition::wait (this=<optimized out>, mutex=0x7fffc401be00, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:158
#3  0x00007ffff50711c7 in QSemaphore::acquire (this=0x7fffc401d120, n=1) at thread/qsemaphore.cpp:144
#4  0x00007ffff6f21174 in StatSyncing::CollectionProvider::artistTracks (this=0x7fffc401d0e0, artistName=...) at ../../src/statsyncing/collection/CollectionProvider.cpp:109
#5  0x00007ffff6f256a8 in StatSyncing::MatchTracksJob::matchTracksFromArtist (this=this@entry=0x8bacd0, providerArtists=...) at ../../src/statsyncing/jobs/MatchTracksJob.cpp:168
#6  0x00007ffff6f2683d in StatSyncing::MatchTracksJob::run (this=0x8bacd0) at ../../src/statsyncing/jobs/MatchTracksJob.cpp:136
#7  0x00007ffff25d01ba in ThreadWeaver::JobRunHelper::runTheJob (this=this@entry=0x7fffc3ffedd0, th=th@entry=0xf1ac50, job=job@entry=0x8bacd0) at ../../../threadweaver/Weaver/Job.cpp:106
#8  0x00007ffff25d0331 in ThreadWeaver::Job::execute (this=0x8bacd0, th=0xf1ac50) at ../../../threadweaver/Weaver/Job.cpp:135
#9  0x00007ffff25cf98f in ThreadWeaver::ThreadRunHelper::run (this=this@entry=0x7fffc3ffee20, parent=0xf1a560, th=th@entry=0xf1ac50) at ../../../threadweaver/Weaver/Thread.cpp:95
#10 0x00007ffff25cfa4b in ThreadWeaver::Thread::run (this=0xf1ac50) at ../../../threadweaver/Weaver/Thread.cpp:142
#11 0x00007ffff5074d0b in QThreadPrivate::start (arg=0xf1ac50) at thread/qthread_unix.cpp:307
#12 0x00007fffee41eb50 in start_thread (arg=<optimized out>) at pthread_create.c:304
#13 0x00007ffff4826a7d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#14 0x0000000000000000 in ?? ()

Thread 6 (Thread 0x7fffc37fe700 (LWP 6357)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00007ffff507520b in wait (time=18446744073709551615, this=0xf1a6b0) at thread/qwaitcondition_unix.cpp:86
#2  QWaitCondition::wait (this=<optimized out>, mutex=0xf1a830, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:158
#3  0x00007ffff25ce301 in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned (this=0xf1a560, th=0x7fffc40bd540) at ../../../threadweaver/Weaver/WeaverImpl.cpp:365
#4  0x00007ffff25d0b4b in ThreadWeaver::WorkingHardState::applyForWork (this=0xf1a900, th=0x7fffc40bd540) at ../../../threadweaver/Weaver/WorkingHardState.cpp:71
#5  0x00007ffff25cf9bf in ThreadWeaver::ThreadRunHelper::run (this=this@entry=0x7fffc37fde20, parent=0xf1a560, th=th@entry=0x7fffc40bd540) at ../../../threadweaver/Weaver/Thread.cpp:87
#6  0x00007ffff25cfa4b in ThreadWeaver::Thread::run (this=0x7fffc40bd540) at ../../../threadweaver/Weaver/Thread.cpp:142
#7  0x00007ffff5074d0b in QThreadPrivate::start (arg=0x7fffc40bd540) at thread/qthread_unix.cpp:307
#8  0x00007fffee41eb50 in start_thread (arg=<optimized out>) at pthread_create.c:304
#9  0x00007ffff4826a7d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#10 0x0000000000000000 in ?? ()

Thread 5 (Thread 0x7fffc2ffd700 (LWP 6358)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00007ffff507520b in wait (time=18446744073709551615, this=0xf1a6b0) at thread/qwaitcondition_unix.cpp:86
#2  QWaitCondition::wait (this=<optimized out>, mutex=0xf1a830, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:158
#3  0x00007ffff25ce301 in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned (this=0xf1a560, th=0x7fffc4177260) at ../../../threadweaver/Weaver/WeaverImpl.cpp:365
#4  0x00007ffff25d0b4b in ThreadWeaver::WorkingHardState::applyForWork (this=0xf1a900, th=0x7fffc4177260) at ../../../threadweaver/Weaver/WorkingHardState.cpp:71
#5  0x00007ffff25cf9bf in ThreadWeaver::ThreadRunHelper::run (this=this@entry=0x7fffc2ffce20, parent=0xf1a560, th=th@entry=0x7fffc4177260) at ../../../threadweaver/Weaver/Thread.cpp:87
#6  0x00007ffff25cfa4b in ThreadWeaver::Thread::run (this=0x7fffc4177260) at ../../../threadweaver/Weaver/Thread.cpp:142
#7  0x00007ffff5074d0b in QThreadPrivate::start (arg=0x7fffc4177260) at thread/qthread_unix.cpp:307
#8  0x00007fffee41eb50 in start_thread (arg=<optimized out>) at pthread_create.c:304
#9  0x00007ffff4826a7d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#10 0x0000000000000000 in ?? ()

Thread 4 (Thread 0x7fffc27fc700 (LWP 6359)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00007ffff507520b in wait (time=18446744073709551615, this=0xf1a6b0) at thread/qwaitcondition_unix.cpp:86
#2  QWaitCondition::wait (this=<optimized out>, mutex=0xf1a830, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:158
#3  0x00007ffff25ce301 in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned (this=0xf1a560, th=0x7fffc4172c30) at ../../../threadweaver/Weaver/WeaverImpl.cpp:365
#4  0x00007ffff25d0b4b in ThreadWeaver::WorkingHardState::applyForWork (this=0xf1a900, th=0x7fffc4172c30) at ../../../threadweaver/Weaver/WorkingHardState.cpp:71
#5  0x00007ffff25d0b64 in ThreadWeaver::WorkingHardState::applyForWork (this=0xf1a900, th=0x7fffc4172c30) at ../../../threadweaver/Weaver/WorkingHardState.cpp:74
#6  0x00007ffff25cf9bf in ThreadWeaver::ThreadRunHelper::run (this=this@entry=0x7fffc27fbe20, parent=0xf1a560, th=th@entry=0x7fffc4172c30) at ../../../threadweaver/Weaver/Thread.cpp:87
#7  0x00007ffff25cfa4b in ThreadWeaver::Thread::run (this=0x7fffc4172c30) at ../../../threadweaver/Weaver/Thread.cpp:142
#8  0x00007ffff5074d0b in QThreadPrivate::start (arg=0x7fffc4172c30) at thread/qthread_unix.cpp:307
#9  0x00007fffee41eb50 in start_thread (arg=<optimized out>) at pthread_create.c:304
#10 0x00007ffff4826a7d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#11 0x0000000000000000 in ?? ()

Thread 3 (Thread 0x7fffc137f700 (LWP 6360)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00007fffea86eebd in ?? () from /usr/lib/x86_64-linux-gnu/libQtWebKit.so.4
#2  0x00007fffea86efc9 in ?? () from /usr/lib/x86_64-linux-gnu/libQtWebKit.so.4
#3  0x00007fffee41eb50 in start_thread (arg=<optimized out>) at pthread_create.c:304
#4  0x00007ffff4826a7d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#5  0x0000000000000000 in ?? ()

Thread 2 (Thread 0x7fffb8fd6700 (LWP 6364)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00007ffff160ae77 in ?? () from /usr/lib/x86_64-linux-gnu/libQtScript.so.4
#2  0x00007ffff160aea9 in ?? () from /usr/lib/x86_64-linux-gnu/libQtScript.so.4
#3  0x00007fffee41eb50 in start_thread (arg=<optimized out>) at pthread_create.c:304
#4  0x00007ffff4826a7d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#5  0x0000000000000000 in ?? ()

Thread 1 (Thread 0x7ffff7f9b780 (LWP 6350)):
[KCrash Handler]
#6  0x00007ffff5d77129 in QRasterWindowSurface::~QRasterWindowSurface (this=0x12ea680, __in_chrg=<optimized out>) at painting/qwindowsurface_raster.cpp:117
#7  0x00007ffff5d771a9 in QRasterWindowSurface::~QRasterWindowSurface (this=0x12ea680, __in_chrg=<optimized out>) at painting/qwindowsurface_raster.cpp:121
#8  0x00007ffff5d8fdbe in QWidgetBackingStore::~QWidgetBackingStore (this=0x1795260, __in_chrg=<optimized out>) at painting/qbackingstore.cpp:909
#9  0x00007ffff5bc6e19 in QWidgetBackingStoreTracker::destroy (this=0x1047a50) at kernel/qwidget.cpp:217
#10 0x00007ffff5bc6f62 in QWidgetPrivate::deleteExtra (this=this@entry=0x169c000) at kernel/qwidget.cpp:1831
#11 0x00007ffff5bc717d in QWidgetPrivate::~QWidgetPrivate (this=0x169c000, __in_chrg=<optimized out>) at kernel/qwidget.cpp:357
#12 0x00007ffff6020b3b in ~QDialogPrivate (this=0x169c000, __in_chrg=<optimized out>) at ../../include/QtGui/private/../../../src/gui/dialogs/qdialog_p.h:66
#13 QDialogPrivate::~QDialogPrivate (this=0x169c000, __in_chrg=<optimized out>) at ../../include/QtGui/private/../../../src/gui/dialogs/qdialog_p.h:66
#14 0x00007ffff51865ec in cleanup (pointer=<optimized out>) at ../../include/QtCore/../../src/corelib/tools/qscopedpointer.h:62
#15 ~QScopedPointer (this=0x16d0d98, __in_chrg=<optimized out>) at ../../include/QtCore/../../src/corelib/tools/qscopedpointer.h:100
#16 QObject::~QObject (this=0x16d0d90, __in_chrg=<optimized out>) at kernel/qobject.cpp:817
#17 0x00007ffff5bc9270 in QWidget::~QWidget (this=0x16d0d90, __in_chrg=<optimized out>) at kernel/qwidget.cpp:1552
#18 0x00007ffff7917f09 in KDialog::~KDialog (this=0x16d0d90, __in_chrg=<optimized out>) at ../../kdeui/dialogs/kdialog.cpp:204
#19 0x00007ffff6f16a86 in StatSyncing::Process::~Process (this=0x17951a0, __in_chrg=<optimized out>) at ../../src/statsyncing/Process.cpp:57
#20 0x00007ffff6f16bb9 in StatSyncing::Process::~Process (this=0x17951a0, __in_chrg=<optimized out>) at ../../src/statsyncing/Process.cpp:58
#21 0x00007ffff5182772 in QObjectPrivate::deleteChildren (this=this@entry=0xe02570) at kernel/qobject.cpp:1908
#22 0x00007ffff51865b6 in QObject::~QObject (this=0x9c1050, __in_chrg=<optimized out>) at kernel/qobject.cpp:927
#23 0x00007ffff6f12e09 in StatSyncing::Controller::~Controller (this=0x9c1050, __in_chrg=<optimized out>) at ../../src/statsyncing/Controller.cpp:79
#24 0x00007ffff5182772 in QObjectPrivate::deleteChildren (this=this@entry=0x790380) at kernel/qobject.cpp:1908
#25 0x00007ffff51865b6 in QObject::~QObject (this=0x7fffffffe0f0, __in_chrg=<optimized out>) at kernel/qobject.cpp:927
#26 0x00007ffff5b88a91 in QApplication::~QApplication (this=0x7fffffffe0f0, __in_chrg=<optimized out>) at kernel/qapplication.cpp:1100
#27 0x00007ffff6f57280 in App::~App (this=0x7fffffffe0f0, __in_chrg=<optimized out>) at ../../src/App.cpp:183
#28 0x0000000000409339 in main (argc=1, argv=0x7fffffffe258) at ../../src/main.cpp:329
Comment 3 Myriam Schweingruber 2013-02-20 21:29:07 UTC
Thank you for the fast feedback.
Comment 4 Matěj Laitl 2013-02-20 23:12:41 UTC
Thanks for the results. I seem to be able to reproduce it by Opening the first step of the "Synchronize Statistics..." and then quitting Amaork. (without closing the dialog). Can you too?
Comment 5 Daniel Phillips 2013-02-21 06:53:16 UTC
That looks like the problem. Opening the first step of the "Synchronize Statistics..." and then quitting Amarok. (without closing the dialogue) crashes each time yes. When not synchronising it closes normally.
Comment 6 Matěj Laitl 2013-02-21 14:16:54 UTC
Git commit 71e7622567556b70ce6af38f1c967ab24cee7c82 by Matěj Laitl.
Committed on 21/02/2013 at 15:15.
Pushed by laitl into branch 'master'.

StatSyncing::Process: destroy dialog along with MainWindow

BUGFIXES:
 * Fix crash when quitting Amarok with Statistics Synchronization open.
FIXED-IN: 2.8

M  +1    -0    ChangeLog
M  +0    -1    src/App.cpp
M  +13   -0    src/statsyncing/Process.cpp
M  +2    -1    src/statsyncing/Process.h

http://commits.kde.org/amarok/71e7622567556b70ce6af38f1c967ab24cee7c82