Summary: | Amarok crashes when fetching covers for a large collection while playing [QImageData::checkForAlphaPixels...] | ||
---|---|---|---|
Product: | [Applications] amarok | Reporter: | Alex Elsayed <eternaleye> |
Component: | general | Assignee: | Amarok Developers <amarok-bugs-dist> |
Status: | RESOLVED UPSTREAM | ||
Severity: | crash | CC: | andresbajotierra, apfelmausmail, arne_bab, aureo.fetter, bugzilla, darthanubis, david.wooffindin, dequire, devoutlytobewished, dollo_7, eqisow, jcribb, jegmaaikkesige, jetencate, jorgen.maas, kde, kenneth.j.kruger, konchud, korvin, lfranchi, lu1975, luizromario, manolis, marcus, marlon, marokanski.kazak, Martin, moritz-kdebugs, neokore, nhn, niels, ophir.geffen, optiluca, piotrek.juzwiak, rohland.max, romain.pub, s.de.bie, shaunehunter, sinozzuke, smithbone, stuffcorpse, t.lattmann, w4t3rkill |
Priority: | NOR | ||
Version: | 2.3-GIT | ||
Target Milestone: | 2.3.0 | ||
Platform: | Compiled Sources | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: | |||
Attachments: |
New crash information added by DrKonqi:
---
I tried to fetch album covers and amarok crashed. The crash happens always, to have a song playing is not relevant.
New crash information added by DrKonqi New crash information added by DrKonqi |
Description
Alex Elsayed
2009-11-20 11:08:08 UTC
I am almost sure this is not a crash in Amarok but in Qt. See also the first line in the Crash Handler: #5 QImageData::checkForAlphaPixels (this=0x0) at image/qimage.cpp:273 Since you are using Qt 4.6.0, which is a pre-released version, you should report this to http://bugreports.qt.nokia.com against QX11AlphaDetector. If they ask for a test case, this would be Amarok http://bugreports.qt.nokia.com/browse/QTBUG-5840 fixed recently *** Bug 219098 has been marked as a duplicate of this bug. *** *** Bug 219336 has been marked as a duplicate of this bug. *** *** Bug 219340 has been marked as a duplicate of this bug. *** *** Bug 219614 has been marked as a duplicate of this bug. *** *** Bug 219837 has been marked as a duplicate of this bug. *** *** Bug 220101 has been marked as a duplicate of this bug. *** commit cc0835434235cadec73ee026723b21a983d12f65 Author: Mark Kretschmann <kretschmann@kde.org> Date: Sat Dec 26 06:38:45 2009 +0100 Try workaround for QPixmap crash in Qt 4.6.0. I have no idea if this works (can't test here), but it's worth a try: We're using QImageReader now for loading the image, instead of QPixmap::loadFromData(). If it still crashes, we should revert this. BUG: 215392 diff --git a/src/covermanager/CoverFetcher.cpp b/src/covermanager/CoverFetcher.cpp index 73523c2..36e7504 100644 --- a/src/covermanager/CoverFetcher.cpp +++ b/src/covermanager/CoverFetcher.cpp @@ -31,10 +31,10 @@ #include <KLocale> #include <KUrl> - #include <QDomDocument> #include <QDomElement> #include <QDomNode> +#include <QImageReader> #include <QLabel> #include <QRegExp> @@ -274,16 +274,22 @@ void CoverFetcher::finishedImageFetch( KJob *job ) //SLOT { QPixmap pixmap; - - if( job->error() || !pixmap.loadFromData( static_cast<KIO::StoredTransferJob*>( job )->data() ) ) + KIO::StoredTransferJob* storedJob = static_cast<KIO::StoredTransferJob*>( job ); + QImageReader imageReader( storedJob->data() ); + + // NOTE: Using QImageReader here is a workaround for a bug in Qt 4.6.0, + // in QPixmap::loadFromData(), which crashes. + // @see: https://bugs.kde.org/show_bug.cgi?id=215392 + if( job->error() || !imageReader.canRead() ) { - debug() << "finishedImageFetch(): KIO::error(): " << job->error(); + debug() << "finishedImageFetch(): KIO::error(): " << storedJob->error(); m_errors += i18n( "The cover could not be retrieved." ); finishWithError( i18n( "The cover could not be retrieved." ), job ); return; } else { + pixmap.fromImage( imageReader.read() ); m_pixmaps.append( pixmap ); } @@ -297,7 +303,7 @@ CoverFetcher::finishedImageFetch( KJob *job ) //SLOT { //yay! images found :) //lets see if the user wants one of it - m_processedCovers = 9999; //prevents to popup a 2nd window + m_processedCovers = 9999; //prevents to popup a 2nd window showCover(); } else commit cc0835434235cadec73ee026723b21a983d12f65 Author: Mark Kretschmann <kretschmann@kde.org> Date: Sat Dec 26 06:38:45 2009 +0100 Try workaround for QPixmap crash in Qt 4.6.0. I have no idea if this works (can't test here), but it's worth a try: We're using QImageReader now for loading the image, instead of QPixmap::loadFromData(). If it still crashes, we should revert this. BUG: 215392 diff --git a/src/covermanager/CoverFetcher.cpp b/src/covermanager/CoverFetcher.cpp index 73523c2..36e7504 100644 --- a/src/covermanager/CoverFetcher.cpp +++ b/src/covermanager/CoverFetcher.cpp @@ -31,10 +31,10 @@ #include <KLocale> #include <KUrl> - #include <QDomDocument> #include <QDomElement> #include <QDomNode> +#include <QImageReader> #include <QLabel> #include <QRegExp> @@ -274,16 +274,22 @@ void CoverFetcher::finishedImageFetch( KJob *job ) //SLOT { QPixmap pixmap; - - if( job->error() || !pixmap.loadFromData( static_cast<KIO::StoredTransferJob*>( job )->data() ) ) + KIO::StoredTransferJob* storedJob = static_cast<KIO::StoredTransferJob*>( job ); + QImageReader imageReader( storedJob->data() ); + + // NOTE: Using QImageReader here is a workaround for a bug in Qt 4.6.0, + // in QPixmap::loadFromData(), which crashes. + // @see: https://bugs.kde.org/show_bug.cgi?id=215392 + if( job->error() || !imageReader.canRead() ) { - debug() << "finishedImageFetch(): KIO::error(): " << job->error(); + debug() << "finishedImageFetch(): KIO::error(): " << storedJob->error(); m_errors += i18n( "The cover could not be retrieved." ); finishWithError( i18n( "The cover could not be retrieved." ), job ); return; } else { + pixmap.fromImage( imageReader.read() ); m_pixmaps.append( pixmap ); } @@ -297,7 +303,7 @@ CoverFetcher::finishedImageFetch( KJob *job ) //SLOT { //yay! images found :) //lets see if the user wants one of it - m_processedCovers = 9999; //prevents to popup a 2nd window + m_processedCovers = 9999; //prevents to popup a 2nd window showCover(); } else *** Bug 220724 has been marked as a duplicate of this bug. *** The proposed fix completely breaks all cover fetching on Qt 4.5 as far as I can tell. Reverting it makes coverfetching work again. also makes it break for 4.6 here. seems to just break coverfetching completely :P investigating... revert attempted QPixmap fix, and try something else. Looking at the commit in Qt that fixes the crash, all it does it check if the input data is null. So now we do the check ourselves, and continue to use QPixmap::loadFromData(). Now it should work with both qt4.5 and 4.6.0 and 4.6.x.o CCBUG: 215392 diff --git a/src/covermanager/CoverFetcher.cpp b/src/covermanager/CoverFetcher.cpp index 36e7504..a2a0951 100644 --- a/src/covermanager/CoverFetcher.cpp +++ b/src/covermanager/CoverFetcher.cpp @@ -275,12 +275,9 @@ CoverFetcher::finishedImageFetch( KJob *job ) //SLOT { QPixmap pixmap; KIO::StoredTransferJob* storedJob = static_cast<KIO::StoredTransferJob*>( job ); - QImageReader imageReader( storedJob->data() ); - - // NOTE: Using QImageReader here is a workaround for a bug in Qt 4.6.0, - // in QPixmap::loadFromData(), which crashes. - // @see: https://bugs.kde.org/show_bug.cgi?id=215392 - if( job->error() || !imageReader.canRead() ) + const QByteArray data = storedJob->data(); + + if( job->error() || data.isNull() || !pixmap.loadFromData( data ) ) { debug() << "finishedImageFetch(): KIO::error(): " << storedJob->error(); m_errors += i18n( "The cover could not be retrieved." ); @@ -289,7 +286,6 @@ CoverFetcher::finishedImageFetch( KJob *job ) //SLOT } else { - pixmap.fromImage( imageReader.read() ); m_pixmaps.append( pixmap ); } *** Bug 220705 has been marked as a duplicate of this bug. *** *** Bug 221069 has been marked as a duplicate of this bug. *** *** Bug 221239 has been marked as a duplicate of this bug. *** Sorry, Leo, but is not fixed :( Just had a crash with todays latest build, using Qt 4.6 And here comes the backtrace: Application: Amarok (amarok), signal: Segmentation fault The current source language is "auto; currently c". [Current thread is 1 (Thread 0x7f4dc5978810 (LWP 26904))] Thread 18 (Thread 0x7f4daaf62910 (LWP 26905)): #0 pthread_cond_timedwait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:220 #1 0x00007f4dafd17c91 in ?? () from /usr/lib/libxine.so.1 #2 0x00007f4dc0b75a04 in start_thread (arg=<value optimized out>) at pthread_create.c:300 #3 0x00007f4dc282a80d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112 #4 0x0000000000000000 in ?? () Thread 17 (Thread 0x7f4da9a19910 (LWP 26906)): #0 0xffffffffff60017b in ?? () #1 0x00007f4da9a18c60 in ?? () #2 0x00007fff7e7ff782 in ?? () Backtrace stopped: previous frame identical to this frame (corrupt stack?) The current source language is "auto; currently asm". Thread 16 (Thread 0x7f4da900e910 (LWP 26909)): #0 0x00007f4dc281e3c3 in *__GI___poll (fds=<value optimized out>, nfds=<value optimized out>, timeout=333) at ../sysdeps/unix/sysv/linux/poll.c:87 #1 0x00007f4da9014cbe in ?? () from /usr/lib/xine/plugins/1.26/xineplug_ao_out_alsa.so #2 0x00007f4dc0b75a04 in start_thread (arg=<value optimized out>) at pthread_create.c:300 #3 0x00007f4dc282a80d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112 #4 0x0000000000000000 in ?? () Thread 15 (Thread 0x7f4da880d910 (LWP 26910)): #0 pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:261 #1 0x00007f4dafd28983 in ?? () from /usr/lib/libxine.so.1 #2 0x00007f4dc0b75a04 in start_thread (arg=<value optimized out>) at pthread_create.c:300 #3 0x00007f4dc282a80d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112 #4 0x0000000000000000 in ?? () The current source language is "auto; currently c". Thread 14 (Thread 0x7f4da7bbf910 (LWP 26911)): #0 pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:261 #1 0x00007f4dafd28983 in ?? () from /usr/lib/libxine.so.1 #2 0x00007f4dc0b75a04 in start_thread (arg=<value optimized out>) at pthread_create.c:300 #3 0x00007f4dc282a80d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112 #4 0x0000000000000000 in ?? () The current source language is "auto; currently asm". Thread 13 (Thread 0x7f4da737c910 (LWP 26912)): #0 pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:261 #1 0x00007f4dafd28983 in ?? () from /usr/lib/libxine.so.1 #2 0x00007f4dc0b75a04 in start_thread (arg=<value optimized out>) at pthread_create.c:300 #3 0x00007f4dc282a80d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112 #4 0x0000000000000000 in ?? () Thread 12 (Thread 0x7f4da6b39910 (LWP 26913)): #0 pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:261 #1 0x00007f4dafd28983 in ?? () from /usr/lib/libxine.so.1 #2 0x00007f4dc0b75a04 in start_thread (arg=<value optimized out>) at pthread_create.c:300 #3 0x00007f4dc282a80d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112 #4 0x0000000000000000 in ?? () Thread 11 (Thread 0x7f4da53c8910 (LWP 26915)): #0 pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:261 #1 0x00007f4dbdac0556 in ?? () from /usr/lib/libQtWebKit.so.4 #2 0x00007f4dbdac0599 in ?? () from /usr/lib/libQtWebKit.so.4 #3 0x00007f4dc0b75a04 in start_thread (arg=<value optimized out>) at pthread_create.c:300 #4 0x00007f4dc282a80d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112 #5 0x0000000000000000 in ?? () Thread 10 (Thread 0x7f4d9f9a3910 (LWP 26916)): #0 pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:261 #1 0x00007f4dc305b67b in QWaitConditionPrivate::wait (this=<value optimized out>, mutex=0x189d370, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:87 #2 QWaitCondition::wait (this=<value optimized out>, mutex=0x189d370, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:159 #3 0x00007f4dc01db096 in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned (this=0x20b3420, th=0x20b76f0) at ../../../threadweaver/Weaver/WeaverImpl.cpp:365 #4 0x00007f4dc01dd74b in ThreadWeaver::WorkingHardState::applyForWork (this=0x20b35e0, th=0x20b76f0) at ../../../threadweaver/Weaver/WorkingHardState.cpp:71 #5 0x00007f4dc01dd764 in ThreadWeaver::WorkingHardState::applyForWork (this=0x20b35e0, th=0x20b76f0) at ../../../threadweaver/Weaver/WorkingHardState.cpp:74 #6 0x00007f4dc01dd764 in ThreadWeaver::WorkingHardState::applyForWork (this=0x20b35e0, th=0x20b76f0) at ../../../threadweaver/Weaver/WorkingHardState.cpp:74 #7 0x00007f4dc01dd764 in ThreadWeaver::WorkingHardState::applyForWork (this=0x20b35e0, th=0x20b76f0) at ../../../threadweaver/Weaver/WorkingHardState.cpp:74 #8 0x00007f4dc01dbbff in ThreadWeaver::ThreadRunHelper::run (this=0x7f4d9f9a2f90, parent=0x20b3420, th=0x20b76f0) at ../../../threadweaver/Weaver/Thread.cpp:87 #9 0x00007f4dc01dc058 in ThreadWeaver::Thread::run (this=0x20b76f0) at ../../../threadweaver/Weaver/Thread.cpp:142 #10 0x00007f4dc305a6c5 in QThreadPrivate::start (arg=0x20b76f0) at thread/qthread_unix.cpp:244 #11 0x00007f4dc0b75a04 in start_thread (arg=<value optimized out>) at pthread_create.c:300 #12 0x00007f4dc282a80d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112 #13 0x0000000000000000 in ?? () Thread 9 (Thread 0x7f4d9f1a2910 (LWP 26922)): #0 pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:261 #1 0x00007f4dc305b67b in QWaitConditionPrivate::wait (this=<value optimized out>, mutex=0x189d370, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:87 #2 QWaitCondition::wait (this=<value optimized out>, mutex=0x189d370, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:159 #3 0x00007f4dc01db096 in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned (this=0x20b3420, th=0x2106a50) at ../../../threadweaver/Weaver/WeaverImpl.cpp:365 #4 0x00007f4dc01dd74b in ThreadWeaver::WorkingHardState::applyForWork (this=0x20b35e0, th=0x2106a50) at ../../../threadweaver/Weaver/WorkingHardState.cpp:71 #5 0x00007f4dc01dbbff in ThreadWeaver::ThreadRunHelper::run (this=0x7f4d9f1a1f90, parent=0x20b3420, th=0x2106a50) at ../../../threadweaver/Weaver/Thread.cpp:87 #6 0x00007f4dc01dc058 in ThreadWeaver::Thread::run (this=0x2106a50) at ../../../threadweaver/Weaver/Thread.cpp:142 #7 0x00007f4dc305a6c5 in QThreadPrivate::start (arg=0x2106a50) at thread/qthread_unix.cpp:244 #8 0x00007f4dc0b75a04 in start_thread (arg=<value optimized out>) at pthread_create.c:300 #9 0x00007f4dc282a80d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112 #10 0x0000000000000000 in ?? () Thread 8 (Thread 0x7f4d9e1a0910 (LWP 26925)): #0 pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:261 #1 0x00007f4dc305b67b in QWaitConditionPrivate::wait (this=<value optimized out>, mutex=0x189d370, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:87 #2 QWaitCondition::wait (this=<value optimized out>, mutex=0x189d370, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:159 #3 0x00007f4dc01db096 in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned (this=0x20b3420, th=0x2132c70) at ../../../threadweaver/Weaver/WeaverImpl.cpp:365 #4 0x00007f4dc01dd74b in ThreadWeaver::WorkingHardState::applyForWork (this=0x20b35e0, th=0x2132c70) at ../../../threadweaver/Weaver/WorkingHardState.cpp:71 #5 0x00007f4dc01dd764 in ThreadWeaver::WorkingHardState::applyForWork (this=0x20b35e0, th=0x2132c70) at ../../../threadweaver/Weaver/WorkingHardState.cpp:74 #6 0x00007f4dc01dd764 in ThreadWeaver::WorkingHardState::applyForWork (this=0x20b35e0, th=0x2132c70) at ../../../threadweaver/Weaver/WorkingHardState.cpp:74 #7 0x00007f4dc01dbbff in ThreadWeaver::ThreadRunHelper::run (this=0x7f4d9e19ff90, parent=0x20b3420, th=0x2132c70) at ../../../threadweaver/Weaver/Thread.cpp:87 #8 0x00007f4dc01dc058 in ThreadWeaver::Thread::run (this=0x2132c70) at ../../../threadweaver/Weaver/Thread.cpp:142 #9 0x00007f4dc305a6c5 in QThreadPrivate::start (arg=0x2132c70) at thread/qthread_unix.cpp:244 #10 0x00007f4dc0b75a04 in start_thread (arg=<value optimized out>) at pthread_create.c:300 #11 0x00007f4dc282a80d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112 #12 0x0000000000000000 in ?? () Thread 7 (Thread 0x7f4d9d99f910 (LWP 26926)): #0 pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:261 #1 0x00007f4dc305b67b in QWaitConditionPrivate::wait (this=<value optimized out>, mutex=0x189d370, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:87 #2 QWaitCondition::wait (this=<value optimized out>, mutex=0x189d370, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:159 #3 0x00007f4dc01db096 in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned (this=0x20b3420, th=0x1d291e0) at ../../../threadweaver/Weaver/WeaverImpl.cpp:365 #4 0x00007f4dc01dd74b in ThreadWeaver::WorkingHardState::applyForWork (this=0x20b35e0, th=0x1d291e0) at ../../../threadweaver/Weaver/WorkingHardState.cpp:71 #5 0x00007f4dc01dd764 in ThreadWeaver::WorkingHardState::applyForWork (this=0x20b35e0, th=0x1d291e0) at ../../../threadweaver/Weaver/WorkingHardState.cpp:74 #6 0x00007f4dc01dd764 in ThreadWeaver::WorkingHardState::applyForWork (this=0x20b35e0, th=0x1d291e0) at ../../../threadweaver/Weaver/WorkingHardState.cpp:74 #7 0x00007f4dc01dd764 in ThreadWeaver::WorkingHardState::applyForWork (this=0x20b35e0, th=0x1d291e0) at ../../../threadweaver/Weaver/WorkingHardState.cpp:74 #8 0x00007f4dc01dd764 in ThreadWeaver::WorkingHardState::applyForWork (this=0x20b35e0, th=0x1d291e0) at ../../../threadweaver/Weaver/WorkingHardState.cpp:74 #9 0x00007f4dc01dbbff in ThreadWeaver::ThreadRunHelper::run (this=0x7f4d9d99ef90, parent=0x20b3420, th=0x1d291e0) at ../../../threadweaver/Weaver/Thread.cpp:87 #10 0x00007f4dc01dc058 in ThreadWeaver::Thread::run (this=0x1d291e0) at ../../../threadweaver/Weaver/Thread.cpp:142 #11 0x00007f4dc305a6c5 in QThreadPrivate::start (arg=0x1d291e0) at thread/qthread_unix.cpp:244 #12 0x00007f4dc0b75a04 in start_thread (arg=<value optimized out>) at pthread_create.c:300 #13 0x00007f4dc282a80d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112 #14 0x0000000000000000 in ?? () Thread 6 (Thread 0x7f4d99ab3910 (LWP 26937)): #0 pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:261 #1 0x00007f4dbee30236 in WTF::TCMalloc_PageHeap::scavengerThread (this=0x7f4dbf10f200) at ../3rdparty/javascriptcore/JavaScriptCore/wtf/FastMalloc.cpp:2304 #2 0x00007f4dbee30279 in WTF::TCMalloc_PageHeap::runScavengerThread (context=0x7f4dbf11d2cc) at ../3rdparty/javascriptcore/JavaScriptCore/wtf/FastMalloc.cpp:1438 #3 0x00007f4dc0b75a04 in start_thread (arg=<value optimized out>) at pthread_create.c:300 #4 0x00007f4dc282a80d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112 #5 0x0000000000000000 in ?? () Thread 5 (Thread 0x7f4d8ddbf910 (LWP 26991)): #0 0x00007f4dc2823412 in select () from /lib/libc.so.6 #1 0x00007f4dafd40725 in xine_usec_sleep () from /usr/lib/libxine.so.1 #2 0x00007f4dafd257e9 in ?? () from /usr/lib/libxine.so.1 #3 0x00007f4dc0b75a04 in start_thread (arg=<value optimized out>) at pthread_create.c:300 #4 0x00007f4dc282a80d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112 #5 0x0000000000000000 in ?? () Thread 4 (Thread 0x7f4d8cbb0910 (LWP 26992)): #0 pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:261 #1 0x00007f4dafd1b54b in ?? () from /usr/lib/libxine.so.1 #2 0x00007f4dafd2151d in ?? () from /usr/lib/libxine.so.1 #3 0x00007f4dc0b75a04 in start_thread (arg=<value optimized out>) at pthread_create.c:300 #4 0x00007f4dc282a80d 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 0x7f4d8c1e2910 (LWP 26993)): #0 pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:261 #1 0x00007f4dafd1b54b in ?? () from /usr/lib/libxine.so.1 #2 0x00007f4dafd22555 in ?? () from /usr/lib/libxine.so.1 #3 0x00007f4dc0b75a04 in start_thread (arg=<value optimized out>) at pthread_create.c:300 #4 0x00007f4dc282a80d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112 #5 0x0000000000000000 in ?? () The current source language is "auto; currently asm". Thread 2 (Thread 0x7f4d8b9e1910 (LWP 26994)): #0 pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:261 #1 0x00007f4dafd2ba0b in xine_event_wait () from /usr/lib/libxine.so.1 #2 0x00007f4dafd2ba7e in ?? () from /usr/lib/libxine.so.1 #3 0x00007f4dc0b75a04 in start_thread (arg=<value optimized out>) at pthread_create.c:300 #4 0x00007f4dc282a80d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112 #5 0x0000000000000000 in ?? () Thread 1 (Thread 0x7f4dc5978810 (LWP 26904)): [KCrash Handler] #5 QImageData::checkForAlphaPixels (this=0x0) at image/qimage.cpp:273 #6 0x00007f4dc3bbcf87 in QX11AlphaDetector::hasAlpha (this=0x34b09a0, img=<value optimized out>, flags=<value optimized out>) at image/qpixmap_x11.cpp:385 #7 QX11AlphaDetector::hasXRenderAndAlpha (this=0x34b09a0, img=<value optimized out>, flags=<value optimized out>) at image/qpixmap_x11.cpp:392 #8 QX11PixmapData::fromImage (this=0x34b09a0, img=<value optimized out>, flags=<value optimized out>) at image/qpixmap_x11.cpp:443 #9 0x00007f4dc3bafcc6 in QPixmapData::fromData (this=0x34b09a0, buf=<value optimized out>, len=<value optimized out>, format=<value optimized out>, flags=) at image/qpixmapdata.cpp:132 #10 0x00007f4dc3ba8200 in QPixmap::loadFromData (this=0x7fff7e793150, buf=0x2883eb8 "<html><head><title>Error</title></head><body><head><title>Application Pool Access Denied</title></head>\n<body><h1>The specified request cannot be executed from current Application Pool</h1></body></bo"..., len=210, format=0x7f4dc4594ac0 "0\211\344", flags=<value optimized out>) at image/qpixmap.cpp:872 #11 0x00007f4dc479f3b4 in QPixmap::loadFromData (this=0x7fff7e793150, buf=..., format=0x0, flags=...) at /usr/include/qt4/QtGui/qpixmap.h:303 #12 0x00007f4dc4b8ffed in CoverFetcher::finishedImageFetch (this=0x22a78c0, job=0x1c7f420) at /home/myriam/kde/src/amarok/src/covermanager/CoverFetcher.cpp:280 #13 0x00007f4dc4b91e93 in CoverFetcher::qt_metacall (this=0x22a78c0, _c=QMetaObject::InvokeMetaMethod, _id=1, _a=0x7fff7e793320) at /home/myriam/kde/build/amarok/src/CoverFetcher.moc:75 #14 0x00007f4dc3160dc3 in QMetaObject::activate (sender=0x1c7f420, m=<value optimized out>, local_signal_index=<value optimized out>, argv=0x7f4dc4594ac0) at kernel/qobject.cpp:3294 #15 0x00007f4dc3567df2 in KJob::result (this=0x0, _t1=0x1c7f420) at ./kjob.moc:194 #16 0x00007f4dc3568090 in KJob::emitResult (this=0x1c7f420) at ../../kdecore/jobs/kjob.cpp:312 #17 0x00007f4dbc4be4e3 in KIO::SimpleJob::slotFinished (this=0x1c7f420) at ../../kio/kio/job.cpp:475 #18 0x00007f4dbc4be9a3 in KIO::TransferJob::slotFinished (this=0x1c7f420) at ../../kio/kio/job.cpp:975 #19 0x00007f4dbc4bcb81 in KIO::TransferJob::qt_metacall (this=0x1c7f420, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x7fff7e793770) at ./jobclasses.moc:367 #20 0x00007f4dbc4bce30 in KIO::StoredTransferJob::qt_metacall (this=0x0, _c=2121871264, _id=2121871392, _a=0x7f4dc4594ac0) at ./jobclasses.moc:477 #21 0x00007f4dc3160dc3 in QMetaObject::activate (sender=0x1bda790, m=<value optimized out>, local_signal_index=<value optimized out>, argv=0x7f4dc4594ac0) at kernel/qobject.cpp:3294 #22 0x00007f4dbc57bfd1 in KIO::SlaveInterface::dispatch (this=0x1bda790, _cmd=104, rawdata=...) at ../../kio/kio/slaveinterface.cpp:175 #23 0x00007f4dbc579343 in KIO::SlaveInterface::dispatch (this=0x1bda790) at ../../kio/kio/slaveinterface.cpp:91 #24 0x00007f4dbc56d67d in KIO::Slave::gotInput (this=0x1bda790) at ../../kio/kio/slave.cpp:322 #25 0x00007f4dbc56d88c in KIO::Slave::qt_metacall (this=0x1bda790, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x7fff7e793b90) at ./slave.moc:82 #26 0x00007f4dc3160dc3 in QMetaObject::activate (sender=0x1ce67b0, m=<value optimized out>, local_signal_index=<value optimized out>, argv=0x7f4dc4594ac0) at kernel/qobject.cpp:3294 #27 0x00007f4dbc48dbb7 in KIO::ConnectionPrivate::dequeue (this=0x2403ec0) at ../../kio/kio/connection.cpp:82 #28 0x00007f4dbc48dcdd in KIO::Connection::qt_metacall (this=0x1ce67b0, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x1be48a0) at ./connection.moc:79 #29 0x00007f4dc315dd19 in QObject::event (this=0x1ce67b0, e=0x1cf7730) at kernel/qobject.cpp:1260 #30 0x00007f4dc3ac6e8c in QApplicationPrivate::notify_helper (this=0xe44e40, receiver=0x1ce67b0, e=0x1cf7730) at kernel/qapplication.cpp:4242 #31 0x00007f4dc3acd48d in QApplication::notify (this=0x7fff7e7945b0, receiver=0x1ce67b0, e=0x1cf7730) at kernel/qapplication.cpp:4125 #32 0x00007f4dc4b42e46 in App::notify (this=0x7fff7e7945b0, receiver=0x1ce67b0, event=0x1cf7730) at /home/myriam/kde/src/amarok/src/App.cpp:845 #33 0x00007f4dc314e04c in QCoreApplication::notifyInternal (this=0x7fff7e7945b0, receiver=0x1ce67b0, event=0x1cf7730) at kernel/qcoreapplication.cpp:704 #34 0x00007f4dc31507c7 in QCoreApplication::sendEvent (receiver=0x0, event_type=<value optimized out>, data=0xd02020) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215 #35 QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=<value optimized out>, data=0xd02020) at kernel/qcoreapplication.cpp:1345 #36 0x00007f4dc3177ae3 in QCoreApplication::sendPostedEvents (s=<value optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:220 #37 postEventSourceDispatch (s=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:276 #38 0x00007f4dbbcefbce in g_main_context_dispatch () from /lib/libglib-2.0.so.0 #39 0x00007f4dbbcf3598 in ?? () from /lib/libglib-2.0.so.0 #40 0x00007f4dbbcf36c0 in g_main_context_iteration () from /lib/libglib-2.0.so.0 #41 0x00007f4dc3177623 in QEventDispatcherGlib::processEvents (this=0xd01640, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:407 #42 0x00007f4dc3b752fe in QGuiEventDispatcherGlib::processEvents (this=0x0, flags=<value optimized out>) at kernel/qguieventdispatcher_glib.cpp:202 #43 0x00007f4dc314c972 in QEventLoop::processEvents (this=<value optimized out>, flags=) at kernel/qeventloop.cpp:149 #44 0x00007f4dc314cd4c in QEventLoop::exec (this=0x7fff7e794550, flags=) at kernel/qeventloop.cpp:201 #45 0x00007f4dc3150a8b in QCoreApplication::exec () at kernel/qcoreapplication.cpp:981 #46 0x000000000040adcf in main (argc=4, argv=0x7fff7e7964b8) at /home/myriam/kde/src/amarok/src/main.cpp:235 The current source language is "auto; currently c". *** Bug 221406 has been marked as a duplicate of this bug. *** Created attachment 39600 [details]
New crash information added by DrKonqi:
---
I tried to fetch album covers and amarok crashed. The crash happens always, to have a song playing is not relevant.
*** Bug 221514 has been marked as a duplicate of this bug. *** Adding keyword. *** Bug 221936 has been marked as a duplicate of this bug. *** *** Bug 222442 has been marked as a duplicate of this bug. *** *** Bug 222465 has been marked as a duplicate of this bug. *** *** Bug 222775 has been marked as a duplicate of this bug. *** *** Bug 223085 has been marked as a duplicate of this bug. *** *** Bug 222997 has been marked as a duplicate of this bug. *** *** Bug 223242 has been marked as a duplicate of this bug. *** *** Bug 223275 has been marked as a duplicate of this bug. *** *** Bug 223286 has been marked as a duplicate of this bug. *** Just got this crash. It's frustrating, but I believe the bug is upstream and not Amarok's fault (directly). Look at the backtrace for these crashes (including my own) and they are all caused by a timeout/other HTTP error and sending the html of the response as the buffer to QPixmap::loadFromData. (Look at frame 10 of thread 1). Perhaps a valid workaround (until loadFromData can be fixed so it returns false with this sort of data) would be to sanity check the buffer for such html responses before calling loadFromData. I tried patching amarok by adding data.startsWith("<html>") || data.startsWith("<HTML>") sanity checks to the CoverFetch.cpp:280 and it does prevent Amarok from crashing successfully, but it is obviously a dirty fix/check. Anyways it turns out this issue has already been reported and fixed upstream for release in Qt 4.6.1: http://qt.gitorious.org/~aleksi/qt/qt-aleksi/commit/dbaea6fa5a90742d89691685baa44a1a34598f21 re bug: http://bugreports.qt.nokia.com/browse/QTBUG-5840 please try using the latest amarok git, i added a check to see if the page is valid xml and error out otherwise. *** Bug 223395 has been marked as a duplicate of this bug. *** *** Bug 223536 has been marked as a duplicate of this bug. *** Leo, git Amarok failed to compile for me. No worries though as Qt 4.6.1 has been released which should correct the bug in the Qt library that was causing Amarok (and other applications) to crash. Created attachment 40162 [details]
New crash information added by DrKonqi
Amarok crashes evrytime it scanns for cover.
Luigi, did you read the previous comments? This is a problem with Qt 4.6, I don't think we need another backtrace, there are all identical :) Hi Myriam! No I didn't, sorry! *** Bug 223977 has been marked as a duplicate of this bug. *** *** Bug 224237 has been marked as a duplicate of this bug. *** *** Bug 224411 has been marked as a duplicate of this bug. *** *** Bug 224621 has been marked as a duplicate of this bug. *** *** Bug 224946 has been marked as a duplicate of this bug. *** *** Bug 225022 has been marked as a duplicate of this bug. *** *** Bug 225033 has been marked as a duplicate of this bug. *** OK. So I figure the fix is within QT 4.6 and not amarok's fault... I'm on karmic kubuntu, I use backports and launchpad packages... How do I get QT4.6 with bugfix for null http cause ? thx David OK googled and found: https://launchpad.net/~mapopa/+archive/qt4.6 instructions for adding a repository for QT4.6. DISCLAIMER: I'm a user that understands the risks and is willing to take them. Only follow this link if you are the same (or better) hmmm. seems like QT4.6 is already included in kubuntu kde4.4 RC2. So the bug is back? or is the fix not present in the current launchpad packages (4:4.6.0-1ubuntu3~karmic)? aftertaf 2010/1/31 Mikko C. <mikko.cal@gmail.com> > https://bugs.kde.org/show_bug.cgi?id=215392 > > > Mikko C. <mikko.cal@gmail.com> changed: > > What |Removed |Added > > ---------------------------------------------------------------------------- > CC| |david.wooffindin@gmail.com > > > > > --- Comment #48 from Mikko C. <mikko cal gmail com> 2010-01-31 19:16:37 > --- > *** Bug 225033 has been marked as a duplicate of this bug. *** > > -- > Configure bugmail: https://bugs.kde.org/userprefs.cgi?tab=email > ------- You are receiving this mail because: ------- > You are on the CC list for the bug. > The bug is fixed in Qt 4.6.1 .... *** Bug 225041 has been marked as a duplicate of this bug. *** thanks... i'll hunt around for 4.6.1 packages then ;) done that, there are none for now, not in lucid either... oh well never mind 2010/1/31 Dario Andres <andresbajotierra@gmail.com> > https://bugs.kde.org/show_bug.cgi?id=215392 > > > > > > --- Comment #52 from Dario Andres <andresbajotierra gmail com> 2010-01-31 > 20:33:09 --- > The bug is fixed in Qt 4.6.1 .... > > -- > Configure bugmail: https://bugs.kde.org/userprefs.cgi?tab=email > ------- You are receiving this mail because: ------- > You are on the CC list for the bug. > *** Bug 225240 has been marked as a duplicate of this bug. *** Created attachment 40556 [details]
New crash information added by DrKonqi
I simply tried numerous times to scroll down the play-list to find the song I added from the collection to play. Every time I scrolled down, the crash resulted.
any news on release of 4.6.1 for karmic/ kde4.4 ?? 2010/2/5 <darthanubis@gmail.com> > https://bugs.kde.org/show_bug.cgi?id=215392 > > > > > > --- Comment #56 from <darthanubis gmail com> 2010-02-05 22:30:23 --- > Created an attachment (id=40556) > --> (http://bugs.kde.org/attachment.cgi?id=40556) > New crash information added by DrKonqi > > I simply tried numerous times to scroll down the play-list to find the song > I > added from the collection to play. Every time I scrolled down, the crash > resulted. > > -- > Configure bugmail: https://bugs.kde.org/userprefs.cgi?tab=email > ------- You are receiving this mail because: ------- > You are on the CC list for the bug. > *** Bug 225659 has been marked as a duplicate of this bug. *** *** Bug 225739 has been marked as a duplicate of this bug. *** *** Bug 225885 has been marked as a duplicate of this bug. *** *** Bug 225899 has been marked as a duplicate of this bug. *** *** Bug 226051 has been marked as a duplicate of this bug. *** *** Bug 226145 has been marked as a duplicate of this bug. *** Adapting title this shouldn't be marked as release blocker or amarok issue, as it is a crash in Qt that is already fixed in 4.6.1 rather than a crash in Amarok. As distros upgrade to 4.6.1 this crash will disappear. *** Bug 227082 has been marked as a duplicate of this bug. *** *** Bug 228091 has been marked as a duplicate of this bug. *** |