Bug 230215 - Amarok Crashes on fetching cover [@ CoverFetcher::finish]
Summary: Amarok Crashes on fetching cover [@ CoverFetcher::finish]
Status: RESOLVED FIXED
Alias: None
Product: amarok
Classification: Applications
Component: Tools/Cover Manager (show other bugs)
Version: 2.3-GIT
Platform: Ubuntu Linux
: NOR crash
Target Milestone: 2.3.1
Assignee: Amarok Developers
URL:
Keywords:
: 230487 230808 232593 238631 244292 244772 245037 250567 250668 253010 256740 266178 (view as bug list)
Depends on:
Blocks:
 
Reported: 2010-03-10 17:00 UTC by Rohan Garg
Modified: 2011-02-17 06:51 UTC (History)
17 users (show)

See Also:
Latest Commit:
Version Fixed In: 2.3.1


Attachments
New crash information added by DrKonqi (17.49 KB, text/plain)
2010-03-10 17:12 UTC, Rohan Garg
Details
New crash information added by DrKonqi (19.35 KB, text/plain)
2010-04-21 23:07 UTC, Rusty
Details
New crash information added by DrKonqi (22.64 KB, text/plain)
2010-07-26 17:29 UTC, Dmytro
Details
New crash information added by DrKonqi (20.60 KB, text/plain)
2010-09-09 09:38 UTC, paola
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Rohan Garg 2010-03-10 17:00:34 UTC
Application: amarok (2.2-GIT)
KDE Platform Version: 4.4.1 (KDE 4.4.1)
Qt Version: 4.6.2
Operating System: Linux 2.6.31-20-generic x86_64
Distribution: Ubuntu 9.10

-- Information about the crash:
Hi im using the most updated version of git and apparently amarok crashes when trying to fetch covers

The crash can be reproduced every time.

 -- Backtrace:
Application: Amarok (amarok), signal: Aborted
The current source language is "auto; currently c".
[Current thread is 1 (Thread 0x7fe14e34b820 (LWP 2792))]

Thread 17 (Thread 0x7fe13253b910 (LWP 2806)):
#0  pthread_cond_timedwait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:220
#1  0x00007fe1372f0da1 in ?? () from /usr/lib/libxine.so.1
#2  0x00007fe14973da04 in start_thread (arg=<value optimized out>) at pthread_create.c:300
#3  0x00007fe14b2e880d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#4  0x0000000000000000 in ?? ()

Thread 16 (Thread 0x7fe130ff2910 (LWP 2807)):
#0  0xffffffffff60017b in ?? ()
#1  0x00007fe130ff1c20 in ?? ()
#2  0x00007fff809ff782 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)
The current source language is "auto; currently asm".

Thread 15 (Thread 0x7fe12bfff910 (LWP 2810)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:261
#1  0x00007fe137301aa3 in ?? () from /usr/lib/libxine.so.1
#2  0x00007fe14973da04 in start_thread (arg=<value optimized out>) at pthread_create.c:300
#3  0x00007fe14b2e880d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#4  0x0000000000000000 in ?? ()

Thread 14 (Thread 0x7fe12b7fe910 (LWP 2811)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:261
#1  0x00007fe137301aa3 in ?? () from /usr/lib/libxine.so.1
#2  0x00007fe14973da04 in start_thread (arg=<value optimized out>) at pthread_create.c:300
#3  0x00007fe14b2e880d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#4  0x0000000000000000 in ?? ()

Thread 13 (Thread 0x7fe12affd910 (LWP 2812)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:261
#1  0x00007fe137301aa3 in ?? () from /usr/lib/libxine.so.1
#2  0x00007fe14973da04 in start_thread (arg=<value optimized out>) at pthread_create.c:300
#3  0x00007fe14b2e880d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#4  0x0000000000000000 in ?? ()

Thread 12 (Thread 0x7fe12a7fc910 (LWP 2822)):
#0  0x00007fe14b2daabb in read () from /lib/libc.so.6
#1  0x00007fe1379acad5 in ?? () from /usr/lib/libasound.so.2
#2  0x00007fe1379a7818 in snd_hctl_handle_events () from /usr/lib/libasound.so.2
#3  0x00007fe1379b1589 in snd_mixer_handle_events () from /usr/lib/libasound.so.2
#4  0x00007fe1301e2d04 in ?? () from /usr/lib/xine/plugins/1.25/xineplug_ao_out_alsa.so
#5  0x00007fe14973da04 in start_thread (arg=<value optimized out>) at pthread_create.c:300
#6  0x00007fe14b2e880d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#7  0x0000000000000000 in ?? ()

Thread 11 (Thread 0x7fe129ffb910 (LWP 2823)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:261
#1  0x00007fe137301aa3 in ?? () from /usr/lib/libxine.so.1
#2  0x00007fe14973da04 in start_thread (arg=<value optimized out>) at pthread_create.c:300
#3  0x00007fe14b2e880d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#4  0x0000000000000000 in ?? ()
The current source language is "auto; currently c".

Thread 10 (Thread 0x7fe1286ba910 (LWP 2825)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:261
#1  0x00007fe1466aa816 in ?? () from /usr/lib/libQtWebKit.so.4
#2  0x00007fe1466aa859 in ?? () from /usr/lib/libQtWebKit.so.4
#3  0x00007fe14973da04 in start_thread (arg=<value optimized out>) at pthread_create.c:300
#4  0x00007fe14b2e880d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#5  0x0000000000000000 in ?? ()
The current source language is "auto; currently asm".

Thread 9 (Thread 0x7fe121113910 (LWP 2826)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:261
#1  0x00007fe14bb1972b in QWaitConditionPrivate::wait (this=<value optimized out>, mutex=0x2dab660, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:87
#2  QWaitCondition::wait (this=<value optimized out>, mutex=0x2dab660, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:159
#3  0x00007fe148186096 in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned (this=0x2daa820, th=0x2daba90) at ../../../threadweaver/Weaver/WeaverImpl.cpp:365
#4  0x00007fe14818874b in ThreadWeaver::WorkingHardState::applyForWork (this=0x2daa3f0, th=0x2daba90) at ../../../threadweaver/Weaver/WorkingHardState.cpp:71
#5  0x00007fe148188764 in ThreadWeaver::WorkingHardState::applyForWork (this=0x2daa3f0, th=0x2daba90) at ../../../threadweaver/Weaver/WorkingHardState.cpp:74
#6  0x00007fe148188764 in ThreadWeaver::WorkingHardState::applyForWork (this=0x2daa3f0, th=0x2daba90) at ../../../threadweaver/Weaver/WorkingHardState.cpp:74
#7  0x00007fe148186bff in ThreadWeaver::ThreadRunHelper::run (this=0x7fe121112f80, parent=0x2daa820, th=0x2daba90) at ../../../threadweaver/Weaver/Thread.cpp:87
#8  0x00007fe148187058 in ThreadWeaver::Thread::run (this=0x2daba90) at ../../../threadweaver/Weaver/Thread.cpp:142
#9  0x00007fe14bb18775 in QThreadPrivate::start (arg=0x2daba90) at thread/qthread_unix.cpp:248
#10 0x00007fe14973da04 in start_thread (arg=<value optimized out>) at pthread_create.c:300
#11 0x00007fe14b2e880d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#12 0x0000000000000000 in ?? ()

Thread 8 (Thread 0x7fe120912910 (LWP 2827)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:261
#1  0x00007fe14bb1972b in QWaitConditionPrivate::wait (this=<value optimized out>, mutex=0x2dab660, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:87
#2  QWaitCondition::wait (this=<value optimized out>, mutex=0x2dab660, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:159
#3  0x00007fe148186096 in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned (this=0x2daa820, th=0x2dada20) at ../../../threadweaver/Weaver/WeaverImpl.cpp:365
#4  0x00007fe14818874b in ThreadWeaver::WorkingHardState::applyForWork (this=0x2daa3f0, th=0x2dada20) at ../../../threadweaver/Weaver/WorkingHardState.cpp:71
#5  0x00007fe148188764 in ThreadWeaver::WorkingHardState::applyForWork (this=0x2daa3f0, th=0x2dada20) at ../../../threadweaver/Weaver/WorkingHardState.cpp:74
#6  0x00007fe148188764 in ThreadWeaver::WorkingHardState::applyForWork (this=0x2daa3f0, th=0x2dada20) at ../../../threadweaver/Weaver/WorkingHardState.cpp:74
#7  0x00007fe148186bff in ThreadWeaver::ThreadRunHelper::run (this=0x7fe120911f80, parent=0x2daa820, th=0x2dada20) at ../../../threadweaver/Weaver/Thread.cpp:87
#8  0x00007fe148187058 in ThreadWeaver::Thread::run (this=0x2dada20) at ../../../threadweaver/Weaver/Thread.cpp:142
#9  0x00007fe14bb18775 in QThreadPrivate::start (arg=0x2dada20) at thread/qthread_unix.cpp:248
#10 0x00007fe14973da04 in start_thread (arg=<value optimized out>) at pthread_create.c:300
#11 0x00007fe14b2e880d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#12 0x0000000000000000 in ?? ()

Thread 7 (Thread 0x7fe11c577910 (LWP 2887)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:261
#1  0x00007fe14bb1972b in QWaitConditionPrivate::wait (this=<value optimized out>, mutex=0x2dab660, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:87
#2  QWaitCondition::wait (this=<value optimized out>, mutex=0x2dab660, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:159
#3  0x00007fe148186096 in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned (this=0x2daa820, th=0x2dcc990) at ../../../threadweaver/Weaver/WeaverImpl.cpp:365
#4  0x00007fe14818874b in ThreadWeaver::WorkingHardState::applyForWork (this=0x2daa3f0, th=0x2dcc990) at ../../../threadweaver/Weaver/WorkingHardState.cpp:71
#5  0x00007fe148188764 in ThreadWeaver::WorkingHardState::applyForWork (this=0x2daa3f0, th=0x2dcc990) at ../../../threadweaver/Weaver/WorkingHardState.cpp:74
#6  0x00007fe148188764 in ThreadWeaver::WorkingHardState::applyForWork (this=0x2daa3f0, th=0x2dcc990) at ../../../threadweaver/Weaver/WorkingHardState.cpp:74
#7  0x00007fe148186bff in ThreadWeaver::ThreadRunHelper::run (this=0x7fe11c576f80, parent=0x2daa820, th=0x2dcc990) at ../../../threadweaver/Weaver/Thread.cpp:87
#8  0x00007fe148187058 in ThreadWeaver::Thread::run (this=0x2dcc990) at ../../../threadweaver/Weaver/Thread.cpp:142
#9  0x00007fe14bb18775 in QThreadPrivate::start (arg=0x2dcc990) at thread/qthread_unix.cpp:248
#10 0x00007fe14973da04 in start_thread (arg=<value optimized out>) at pthread_create.c:300
#11 0x00007fe14b2e880d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#12 0x0000000000000000 in ?? ()

Thread 6 (Thread 0x7fe11bd76910 (LWP 2888)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:261
#1  0x00007fe14bb1972b in QWaitConditionPrivate::wait (this=<value optimized out>, mutex=0x2dab660, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:87
#2  QWaitCondition::wait (this=<value optimized out>, mutex=0x2dab660, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:159
#3  0x00007fe148186096 in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned (this=0x2daa820, th=0x2dc8730) at ../../../threadweaver/Weaver/WeaverImpl.cpp:365
#4  0x00007fe14818874b in ThreadWeaver::WorkingHardState::applyForWork (this=0x2daa3f0, th=0x2dc8730) at ../../../threadweaver/Weaver/WorkingHardState.cpp:71
#5  0x00007fe148186bff in ThreadWeaver::ThreadRunHelper::run (this=0x7fe11bd75f80, parent=0x2daa820, th=0x2dc8730) at ../../../threadweaver/Weaver/Thread.cpp:87
#6  0x00007fe148187058 in ThreadWeaver::Thread::run (this=0x2dc8730) at ../../../threadweaver/Weaver/Thread.cpp:142
#7  0x00007fe14bb18775 in QThreadPrivate::start (arg=0x2dc8730) at thread/qthread_unix.cpp:248
#8  0x00007fe14973da04 in start_thread (arg=<value optimized out>) at pthread_create.c:300
#9  0x00007fe14b2e880d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#10 0x0000000000000000 in ?? ()

Thread 5 (Thread 0x7fe11b575910 (LWP 3128)):
#0  0x00007fe14b2e1412 in select () from /lib/libc.so.6
#1  0x00007fe14bbe9db3 in QProcessManager::run (this=0x7fe14bf20f20) at io/qprocess_unix.cpp:245
#2  0x00007fe14bb18775 in QThreadPrivate::start (arg=0x7fe14bf20f20) at thread/qthread_unix.cpp:248
#3  0x00007fe14973da04 in start_thread (arg=<value optimized out>) at pthread_create.c:300
#4  0x00007fe14b2e880d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#5  0x0000000000000000 in ?? ()

Thread 4 (Thread 0x7fe11acf4910 (LWP 3157)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:261
#1  0x00007fe1479f3396 in QTWTF::TCMalloc_PageHeap::scavengerThread (this=0x7fe147cd1220) at ../3rdparty/javascriptcore/JavaScriptCore/wtf/FastMalloc.cpp:2304
#2  0x00007fe1479f33d9 in QTWTF::TCMalloc_PageHeap::runScavengerThread (context=0x7fe147cdf2ec) at ../3rdparty/javascriptcore/JavaScriptCore/wtf/FastMalloc.cpp:1438
#3  0x00007fe14973da04 in start_thread (arg=<value optimized out>) at pthread_create.c:300
#4  0x00007fe14b2e880d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#5  0x0000000000000000 in ?? ()
The current source language is "auto; currently c".

Thread 3 (Thread 0x7fe10c6b5910 (LWP 3160)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:261
#1  0x00007fe14bb1972b in QWaitConditionPrivate::wait (this=<value optimized out>, mutex=0x36afca8, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:87
#2  QWaitCondition::wait (this=<value optimized out>, mutex=0x36afca8, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:159
#3  0x00007fe14ca8d59e in QFileInfoGatherer::run (this=<value optimized out>) at dialogs/qfileinfogatherer.cpp:203
#4  0x00007fe14bb18775 in QThreadPrivate::start (arg=0x36afc98) at thread/qthread_unix.cpp:248
#5  0x00007fe14973da04 in start_thread (arg=<value optimized out>) at pthread_create.c:300
#6  0x00007fe14b2e880d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#7  0x0000000000000000 in ?? ()
The current source language is "auto; currently asm".

Thread 2 (Thread 0x7fe10beb4910 (LWP 3161)):
#0  0x00007fe1497400be in __pthread_mutex_lock (mutex=0x36d19b8) at pthread_mutex_lock.c:62
#1  0x00007fe1447db87a in g_main_context_check () from /lib/libglib-2.0.so.0
#2  0x00007fe1447dc290 in ?? () from /lib/libglib-2.0.so.0
#3  0x00007fe1447dc6c0 in g_main_context_iteration () from /lib/libglib-2.0.so.0
#4  0x00007fe14bc36386 in QEventDispatcherGlib::processEvents (this=0x36d0bf0, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:414
#5  0x00007fe14bc0b732 in QEventLoop::processEvents (this=<value optimized out>, flags=) at kernel/qeventloop.cpp:149
#6  0x00007fe14bc0bb0c in QEventLoop::exec (this=0x7fe10beb3f30, flags=) at kernel/qeventloop.cpp:201
#7  0x00007fe14bb15d59 in QThread::exec (this=<value optimized out>) at thread/qthread.cpp:487
#8  0x00007fe14bbebe88 in QInotifyFileSystemWatcherEngine::run (this=0x36b1e90) at io/qfilesystemwatcher_inotify.cpp:248
#9  0x00007fe14bb18775 in QThreadPrivate::start (arg=0x36b1e90) at thread/qthread_unix.cpp:248
#10 0x00007fe14973da04 in start_thread (arg=<value optimized out>) at pthread_create.c:300
#11 0x00007fe14b2e880d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#12 0x0000000000000000 in ?? ()

Thread 1 (Thread 0x7fe14e34b820 (LWP 2792)):
[KCrash Handler]
#5  0x00007fe14b23c4b5 in *__GI_raise (sig=<value optimized out>) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
#6  0x00007fe14b23ff50 in *__GI_abort () at abort.c:92
#7  0x00007fe14bb10864 in qt_message_output (msgType=QtFatalMsg, buf=<value optimized out>) at global/qglobal.cpp:2250
#8  0x00007fe14bb10a42 in qt_message (msgType=QtFatalMsg, msg=0x7fe14bc6df08 "ASSERT: \"%s\" in file %s, line %d", ap=0x7fff80980050) at global/qglobal.cpp:2296
#9  0x00007fe14bb10bf5 in qFatal (msg=0xae8 <Address 0xae8 out of bounds>) at global/qglobal.cpp:2479
#10 0x00007fe14d215788 in KSharedPtr<Meta::Album>::operator-> (this=0x7fff809801f0) at /usr/include/ksharedptr.h:126
#11 0x00007fe14d6603b4 in CoverFetcher::finish (this=0x3388b60, unit=..., state=CoverFetcher::Success, message=...) at /home/shadeslayer/unstable/Git/amarok/src/covermanager/CoverFetcher.cpp:254
#12 0x00007fe14d65ffe9 in CoverFetcher::showCover (this=0x3388b60, unit=...) at /home/shadeslayer/unstable/Git/amarok/src/covermanager/CoverFetcher.cpp:221
#13 0x00007fe14d65fbae in CoverFetcher::slotResult (this=0x3388b60, job=0x3414220) at /home/shadeslayer/unstable/Git/amarok/src/covermanager/CoverFetcher.cpp:191
#14 0x00007fe14d6609d4 in CoverFetcher::qt_metacall (this=0x3388b60, _c=QMetaObject::InvokeMetaMethod, _id=3, _a=0x7fff809805e0) at /home/shadeslayer/unstable/Git/amarok/build/src/CoverFetcher.moc:83
#15 0x00007fe14bc1fc0f in QMetaObject::activate (sender=0x3414220, m=<value optimized out>, local_signal_index=<value optimized out>, argv=0xffffffffffffffff) at kernel/qobject.cpp:3293
#16 0x00007fe14c025da2 in KJob::result (this=0xae8, _t1=0x3414220) at ./kjob.moc:194
#17 0x00007fe14c026040 in KJob::emitResult (this=0x3414220) at ../../kdecore/jobs/kjob.cpp:312
#18 0x00007fe1452d6853 in KIO::SimpleJob::slotFinished (this=0x3414220) at ../../kio/kio/job.cpp:486
#19 0x00007fe1452d7217 in KIO::TransferJob::slotFinished (this=0x3414220) at ../../kio/kio/job.cpp:1058
#20 0x00007fe1452d5191 in KIO::TransferJob::qt_metacall (this=0x3414220, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x7fff80980a10) at ./jobclasses.moc:367
#21 0x00007fe1452d5440 in KIO::StoredTransferJob::qt_metacall (this=0xae8, _c=2792, _id=6, _a=0xffffffffffffffff) at ./jobclasses.moc:477
#22 0x00007fe14bc1fc0f in QMetaObject::activate (sender=0x28c8df0, m=<value optimized out>, local_signal_index=<value optimized out>, argv=0xffffffffffffffff) at kernel/qobject.cpp:3293
#23 0x00007fe145395a91 in KIO::SlaveInterface::dispatch (this=0x28c8df0, _cmd=104, rawdata=...) at ../../kio/kio/slaveinterface.cpp:175
#24 0x00007fe145392e03 in KIO::SlaveInterface::dispatch (this=0x28c8df0) at ../../kio/kio/slaveinterface.cpp:91
#25 0x00007fe145387166 in KIO::Slave::gotInput (this=0x28c8df0) at ../../kio/kio/slave.cpp:324
#26 0x00007fe14538734c in KIO::Slave::qt_metacall (this=0x28c8df0, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x7fff80980e30) at ./slave.moc:82
#27 0x00007fe14bc1fc0f in QMetaObject::activate (sender=0x2dfd600, m=<value optimized out>, local_signal_index=<value optimized out>, argv=0xffffffffffffffff) at kernel/qobject.cpp:3293
#28 0x00007fe1452a5ad7 in KIO::ConnectionPrivate::dequeue (this=0x2968750) at ../../kio/kio/connection.cpp:82
#29 0x00007fe1452a5bfd in KIO::Connection::qt_metacall (this=0x2dfd600, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x33e28f0) at ./connection.moc:79
#30 0x00007fe14bc1cb49 in QObject::event (this=0x2dfd600, e=0x349c2d0) at kernel/qobject.cpp:1248
#31 0x00007fe14c58812c in QApplicationPrivate::notify_helper (this=0x1836c80, receiver=0x2dfd600, e=0x349c2d0) at kernel/qapplication.cpp:4300
#32 0x00007fe14c58e71b in QApplication::notify (this=0x7fff809818e0, receiver=0x2dfd600, e=0x349c2d0) at kernel/qapplication.cpp:4183
#33 0x00007fe14d615b04 in App::notify (this=0x7fff809818e0, receiver=0x2dfd600, event=0x349c2d0) at /home/shadeslayer/unstable/Git/amarok/src/App.cpp:917
#34 0x00007fe14bc0ce0c in QCoreApplication::notifyInternal (this=0x7fff809818e0, receiver=0x2dfd600, event=0x349c2d0) at kernel/qcoreapplication.cpp:704
#35 0x00007fe14bc0f587 in QCoreApplication::sendEvent (receiver=0x0, event_type=<value optimized out>, data=0x16e7470) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#36 QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=<value optimized out>, data=0x16e7470) at kernel/qcoreapplication.cpp:1345
#37 0x00007fe14bc367f3 in QCoreApplication::sendPostedEvents (s=<value optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:220
#38 postEventSourceDispatch (s=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:276
#39 0x00007fe1447d8bce in g_main_context_dispatch () from /lib/libglib-2.0.so.0
#40 0x00007fe1447dc598 in ?? () from /lib/libglib-2.0.so.0
#41 0x00007fe1447dc6c0 in g_main_context_iteration () from /lib/libglib-2.0.so.0
#42 0x00007fe14bc36333 in QEventDispatcherGlib::processEvents (this=0x16e6bc0, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:412
#43 0x00007fe14c637f0e in QGuiEventDispatcherGlib::processEvents (this=0xae8, flags=<value optimized out>) at kernel/qguieventdispatcher_glib.cpp:204
#44 0x00007fe14bc0b732 in QEventLoop::processEvents (this=<value optimized out>, flags=) at kernel/qeventloop.cpp:149
#45 0x00007fe14bc0bb0c in QEventLoop::exec (this=0x7fff80981880, flags=) at kernel/qeventloop.cpp:201
#46 0x00007fe14bc0f84b in QCoreApplication::exec () at kernel/qcoreapplication.cpp:981
#47 0x000000000040afc1 in main (argc=1, argv=0x7fff80983838) at /home/shadeslayer/unstable/Git/amarok/src/main.cpp:237
The current source language is "auto; currently c".

Reported using DrKonqi
Comment 1 Rohan Garg 2010-03-10 17:12:26 UTC
Created attachment 41506 [details]
New crash information added by DrKonqi

Same crash a few moments later,just trying to confirm this issue with other tracks,it crashes on fetching the cover via the internet
Comment 2 Myriam Schweingruber 2010-03-11 10:17:14 UTC
Backtrace from Comment #1:

Thread 1 (Thread 0x7f0001e8f820 (LWP 12774)):
[KCrash Handler]
#5  0x00007efffed814b5 in *__GI_raise (sig=<value optimized out>) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
#6  0x00007efffed84f50 in *__GI_abort () at abort.c:92
#7  0x00007effff655864 in qt_message_output (msgType=QtFatalMsg, buf=<value optimized out>) at global/qglobal.cpp:2250
#8  0x00007effff655a42 in qt_message (msgType=QtFatalMsg, msg=0x7effff7b2f08 "ASSERT: \"%s\" in file %s, line %d", ap=0x7fff8b1268f0) at global/qglobal.cpp:2296
#9  0x00007effff655bf5 in qFatal (msg=0x31e6 <Address 0x31e6 out of bounds>) at global/qglobal.cpp:2479
#10 0x00007f0000d5a0f4 in KSharedPtr<Meta::Album>::operator-> (this=0x7fff8b126a90) at /usr/include/ksharedptr.h:126
#11 0x00007f00011a4d0c in CoverFetcher::finish (this=0x37595c0, unit=..., state=CoverFetcher::Success, message=...) at /home/shadeslayer/unstable/Git/amarok/src/covermanager/CoverFetcher.cpp:254
#12 0x00007f00011a4941 in CoverFetcher::showCover (this=0x37595c0, unit=...) at /home/shadeslayer/unstable/Git/amarok/src/covermanager/CoverFetcher.cpp:221
#13 0x00007f00011a4506 in CoverFetcher::slotResult (this=0x37595c0, job=0x2b57440) at /home/shadeslayer/unstable/Git/amarok/src/covermanager/CoverFetcher.cpp:191
#14 0x00007f00011a532c in CoverFetcher::qt_metacall (this=0x37595c0, _c=QMetaObject::InvokeMetaMethod, _id=3, _a=0x7fff8b126e80) at /home/shadeslayer/unstable/Git/amarok/build/src/CoverFetcher.moc:83
#15 0x00007effff764c0f in QMetaObject::activate (sender=0x2b57440, m=<value optimized out>, local_signal_index=<value optimized out>, argv=0xffffffffffffffff) at kernel/qobject.cpp:3293
#16 0x00007effffb6ada2 in KJob::result (this=0x31e6, _t1=0x2b57440) at ./kjob.moc:194
#17 0x00007effffb6b040 in KJob::emitResult (this=0x2b57440) at ../../kdecore/jobs/kjob.cpp:312
#18 0x00007efff8e1b853 in KIO::SimpleJob::slotFinished (this=0x2b57440) at ../../kio/kio/job.cpp:486
#19 0x00007efff8e1c217 in KIO::TransferJob::slotFinished (this=0x2b57440) at ../../kio/kio/job.cpp:1058
#20 0x00007efff8e1a191 in KIO::TransferJob::qt_metacall (this=0x2b57440, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x7fff8b1272b0) at ./jobclasses.moc:367
#21 0x00007efff8e1a440 in KIO::StoredTransferJob::qt_metacall (this=0x31e6, _c=12774, _id=6, _a=0xffffffffffffffff) at ./jobclasses.moc:477
#22 0x00007effff764c0f in QMetaObject::activate (sender=0x3002050, m=<value optimized out>, local_signal_index=<value optimized out>, argv=0xffffffffffffffff) at kernel/qobject.cpp:3293
#23 0x00007efff8edaa91 in KIO::SlaveInterface::dispatch (this=0x3002050, _cmd=104, rawdata=...) at ../../kio/kio/slaveinterface.cpp:175
#24 0x00007efff8ed7e03 in KIO::SlaveInterface::dispatch (this=0x3002050) at ../../kio/kio/slaveinterface.cpp:91
#25 0x00007efff8ecc166 in KIO::Slave::gotInput (this=0x3002050) at ../../kio/kio/slave.cpp:324
#26 0x00007efff8ecc34c in KIO::Slave::qt_metacall (this=0x3002050, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x7fff8b1276d0) at ./slave.moc:82
#27 0x00007effff764c0f in QMetaObject::activate (sender=0x2060780, m=<value optimized out>, local_signal_index=<value optimized out>, argv=0xffffffffffffffff) at kernel/qobject.cpp:3293
#28 0x00007efff8deaad7 in KIO::ConnectionPrivate::dequeue (this=0x2da1be0) at ../../kio/kio/connection.cpp:82
#29 0x00007efff8deabfd in KIO::Connection::qt_metacall (this=0x2060780, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x360e150) at ./connection.moc:79
#30 0x00007effff761b49 in QObject::event (this=0x2060780, e=0x3707e90) at kernel/qobject.cpp:1248
#31 0x00007f00000cd12c in QApplicationPrivate::notify_helper (this=0x1f1a0c0, receiver=0x2060780, e=0x3707e90) at kernel/qapplication.cpp:4300
#32 0x00007f00000d371b in QApplication::notify (this=0x7fff8b128180, receiver=0x2060780, e=0x3707e90) at kernel/qapplication.cpp:4183
#33 0x00007f000115a45c in App::notify (this=0x7fff8b128180, receiver=0x2060780, event=0x3707e90) at /home/shadeslayer/unstable/Git/amarok/src/App.cpp:917
#34 0x00007effff751e0c in QCoreApplication::notifyInternal (this=0x7fff8b128180, receiver=0x2060780, event=0x3707e90) at kernel/qcoreapplication.cpp:704
#35 0x00007effff754587 in QCoreApplication::sendEvent (receiver=0x0, event_type=<value optimized out>, data=0x1dca470) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#36 QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=<value optimized out>, data=0x1dca470) at kernel/qcoreapplication.cpp:1345
#37 0x00007effff77b7f3 in QCoreApplication::sendPostedEvents (s=<value optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:220
#38 postEventSourceDispatch (s=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:276
#39 0x00007efff831dbce in g_main_context_dispatch () from /lib/libglib-2.0.so.0
#40 0x00007efff8321598 in ?? () from /lib/libglib-2.0.so.0
#41 0x00007efff83216c0 in g_main_context_iteration () from /lib/libglib-2.0.so.0
#42 0x00007effff77b333 in QEventDispatcherGlib::processEvents (this=0x1dc9bc0, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:412
#43 0x00007f000017cf0e in QGuiEventDispatcherGlib::processEvents (this=0x31e6, flags=<value optimized out>) at kernel/qguieventdispatcher_glib.cpp:204
#44 0x00007effff750732 in QEventLoop::processEvents (this=<value optimized out>, flags=) at kernel/qeventloop.cpp:149
#45 0x00007effff750b0c in QEventLoop::exec (this=0x7fff8b128120, flags=) at kernel/qeventloop.cpp:201
#46 0x00007effff75484b in QCoreApplication::exec () at kernel/qcoreapplication.cpp:981
#47 0x000000000040afc1 in main (argc=1, argv=0x7fff8b12a0d8) at /home/shadeslayer/unstable/Git/amarok/src/main.cpp:237
The current source language is "auto; currently c".
Comment 3 Rick W. Chen 2010-03-14 04:44:31 UTC
*** Bug 230487 has been marked as a duplicate of this bug. ***
Comment 4 Rick W. Chen 2010-03-14 04:45:06 UTC
Ok I believe I've fixed the crash. It's in my local branch and not pushed yet. I have lots of cover fetcher changes (mostly UI) coming up later which will include this fix. I'll update this BR when I merge it.
Comment 5 Myriam Schweingruber 2010-03-14 10:16:31 UTC
Setting target: Rick, since we are not in string and feature freeze anymore on git ... :)
Comment 6 Rick W. Chen 2010-03-14 16:58:50 UTC
commit f1456bc2a9e158e2c318b2f1003cfea2b28ad0a6
Author: Rick W. Chen <stuffcorpse@archlinux.us>
Date:   Thu Mar 11 23:50:47 2010 +1300

    cover fetcher: remove pending manual jobs if cover found dialog is closed
    
    When entering a custom query for covers in the cover found dialog, the user
    may cancel or close the dialog before all the results are fetched. This
    causes the dialog to reappear with the newly fetched covers, which is
    annoying.
    
    Furthermore, covers retrieved from custom queries aren't associated with
    any album for these newly created dialogs (because such queries should only
    be available when a dialog has already been created from an album). So
    crashing is ensured if a cover is chosen from this new dialog. Making sure
    the dialog does not reappear solves this.
    
    BUG: 230215

diff --git a/src/covermanager/CoverFetcher.cpp b/src/covermanager/CoverFetcher.cpp
index 8a77024..6a50d46 100644
--- a/src/covermanager/CoverFetcher.cpp
+++ b/src/covermanager/CoverFetcher.cpp
@@ -109,6 +109,10 @@ void
 CoverFetcher::slotFetch( const CoverFetchUnit::Ptr unit )
 {
     DEBUG_BLOCK
+
+    if( !unit )
+        return;
+
     const CoverFetchPayload *payload = unit->payload();
     const KUrl::List urls = payload->urls();
 
@@ -150,6 +154,9 @@ CoverFetcher::slotResult( KJob *job )
     DEBUG_BLOCK
     const CoverFetchUnit::Ptr unit( m_jobs.take( job ) );
 
+    if( !unit )
+        return;
+
     if( job && job->error() )
     {
         finish( unit, Error, i18n( "There was an error communicating with last.fm." ) );
@@ -202,17 +209,55 @@ CoverFetcher::slotResult( KJob *job )
 }
 
 void
+CoverFetcher::slotDialogFinished()
+{
+    /*
+     * Remove all manual fetch jobs from the queue if the user accepts, cancels,
+     * or closes the cover found dialog. This way, the dialog will not reappear
+     * if there are still covers yet to be retrieved.
+     */
+    QList< CoverFetchUnit::Ptr > units = m_jobs.values();
+    foreach( const CoverFetchUnit::Ptr &unit, units )
+    {
+        if( unit->isInteractive() )
+        {
+            m_queue->remove( unit );
+            m_queueLater.removeAll( unit->album() );
+            m_pixmaps.remove( unit );
+            m_selectedPixmaps.remove( unit );
+
+            const KJob *job = m_jobs.key( unit );
+            const_cast< KJob* >( job )->kill();
+            The::statusBar()->endProgressOperation( job );
+            m_jobs.remove( job );
+        }
+    }
+}
+
+void
 CoverFetcher::showCover( const CoverFetchUnit::Ptr unit )
 {
     DEBUG_BLOCK
     QList< QPixmap > pixmaps = m_pixmaps.take( unit );
 
+    if( cover.isNull() )
+    {
+        finish( unit, Error );
+        return;
+    }
+
     if( !m_dialog )
     {
-        m_dialog = new CoverFoundDialog( static_cast<QWidget*>( parent() ), unit->album(), pixmaps );
+        const Meta::AlbumPtr album = unit->album();
+        if( !album )
+        {
+            finish( unit, Error );
+            return;
+        }
 
-        connect( m_dialog, SIGNAL(newCustomQuery(const QString&)),
-                 this,     SLOT(queueQuery(const QString&)) );
+        m_dialog = new CoverFoundDialog( album, cover, data, static_cast<QWidget*>( parent() ) );
+        connect( m_dialog, SIGNAL(newCustomQuery(const QString&)), SLOT(queueQuery(const QString&)) );
+        connect( m_dialog, SIGNAL(finished()), SLOT(slotDialogFinished()) );
 
         switch( m_dialog->exec() )
         {
@@ -221,7 +266,7 @@ CoverFetcher::showCover( const CoverFetchUnit::Ptr unit )
             finish( unit );
             break;
 
-        case KDialog::Rejected: //make sure we do not show any more dialogs
+        case KDialog::Rejected:
         default:
             finish( unit, Cancelled );
             break;
diff --git a/src/covermanager/CoverFetcher.h b/src/covermanager/CoverFetcher.h
index 225859f..fc039d1 100644
--- a/src/covermanager/CoverFetcher.h
+++ b/src/covermanager/CoverFetcher.h
@@ -62,6 +62,9 @@ private slots:
     void slotFetch( const CoverFetchUnit::Ptr unit );
     void slotResult( KJob *job );
 
+    /// Cover found dialog is closed by the user
+    void slotDialogFinished();
+
 private:
     static CoverFetcher* s_instance;
     CoverFetcher();
Comment 7 Myriam Schweingruber 2010-03-15 10:14:22 UTC
*** Bug 230808 has been marked as a duplicate of this bug. ***
Comment 8 Rick W. Chen 2010-03-29 17:05:49 UTC
*** Bug 232593 has been marked as a duplicate of this bug. ***
Comment 9 Rusty 2010-04-21 23:07:29 UTC
Created attachment 42955 [details]
New crash information added by DrKonqi

While manually retrieving cover art via right click in the left pane (Local Collection), Amarok crashed after approximately 10 cover searches.

Version 2.3.0
Using KDE 4.4.2 (KDE 4.4.2)
Comment 10 Rick W. Chen 2010-05-24 16:33:37 UTC
*** Bug 238631 has been marked as a duplicate of this bug. ***
Comment 11 Myriam Schweingruber 2010-07-12 15:27:52 UTC
*** Bug 244292 has been marked as a duplicate of this bug. ***
Comment 12 Myriam Schweingruber 2010-07-16 11:25:19 UTC
*** Bug 244772 has been marked as a duplicate of this bug. ***
Comment 13 Myriam Schweingruber 2010-07-18 17:22:03 UTC
*** Bug 245037 has been marked as a duplicate of this bug. ***
Comment 14 Dmytro 2010-07-26 17:29:45 UTC
Created attachment 49495 [details]
New crash information added by DrKonqi

Amarok crashes after second confirmation of cover art. When I download cover art manually, the confirmation window may appear twice or more times (I push Enter only once!). And after second confirmation Amarok crashes. This repeats every time. If i cancel other requests, nothing happens and Amarok works
Comment 15 Rick W. Chen 2010-07-26 20:43:45 UTC
Dmytro, which version of Amarok are you using?
Comment 16 Dmytro 2010-07-28 17:01:39 UTC
(In reply to comment #15)
> Dmytro, which version of Amarok are you using?

Amarok version 2.3.0
Comment 17 Myriam Schweingruber 2010-07-28 17:14:45 UTC
Dmytro, as you can see in the bugs header this is about Amarok 2.3.1, which is ahead of your version. Please upgrade to Amarok 2.3.1 and try again.
Comment 18 Myriam Schweingruber 2010-09-08 16:12:38 UTC
*** Bug 250567 has been marked as a duplicate of this bug. ***
Comment 19 paola 2010-09-09 09:38:33 UTC
Created attachment 51450 [details]
New crash information added by DrKonqi

Amarok crashed while I was confirming the research of a cover
Comment 20 Myriam Schweingruber 2010-09-09 10:00:08 UTC
Paola, please upgrade to Amarok 2.3.1, this is already fixed since quite some time. You should have seen that when you added your comment to this report...
Comment 21 Myriam Schweingruber 2010-09-09 18:49:11 UTC
*** Bug 250668 has been marked as a duplicate of this bug. ***
Comment 22 Mikko C. 2010-10-02 12:36:06 UTC
*** Bug 253010 has been marked as a duplicate of this bug. ***
Comment 23 Mikko C. 2010-11-13 10:34:10 UTC
*** Bug 256740 has been marked as a duplicate of this bug. ***
Comment 24 Myriam Schweingruber 2011-02-17 06:51:46 UTC
*** Bug 266178 has been marked as a duplicate of this bug. ***