[kde-linux] The MP4 that ate Amarok

Ryan Rix ry at n.rix.si
Sun Jun 27 05:19:42 UTC 2010


On Fri 25 June 2010 1:42:00 pm David J Iannucci wrote:
> On Fri, 25 Jun 2010 13:46 +0100, "Alexander Harrowell" wrote:
> > I'm using Amarok 2.3 on KDE4.3.5 on OpenSUSE11.2 on an i586...
> > [....]
> > Come to think of it, Amarok segfaults quite a lot in general, but this
> > is weird.
> 
> Thanks for helping me feel glad I'm still using Amarok 1.4.  My use of
> KDE 4 is still limited to virtually just Kontact/Kmail, and when 4.5
> comes out, I think I'll start transitioning more of my environment over
> to it, but I have a feeling I'll be sticking with Amarok 1.4 for *quite*
> a while longer...

Sorry, but what does this add to the discussion? It seems like pointless 
bikeshedding/trolling to me... If you are going to post to a user list, please 
at least include *SOME* helpful tidbits, instead of just railing on KDE. 

@Alexander

Looking at the crash report, I am more tempted to blame Qt or some KDE library 
and NOT Amarok. It looks as though it's choking on trying to load some sort of 
image, presumably embedded (or downloaded) album art...

> Thread 1 (Thread 0xb3625700 (LWP 7667)):
> #0  0xffffe430 in __kernel_vsyscall ()
> #1  0xb5b56d5e in poll () from /lib/libc.so.6
> #2  0xb3a33150 in ?? () from /usr/lib/libxcb.so.1
> #3  0xb3a34e64 in xcb_wait_for_reply () from /usr/lib/libxcb.so.1
> #4  0xb590af3b in _XReply () from /usr/lib/libX11.so.6
> #5  0xb58e79b7 in XGetImage () from /usr/lib/libX11.so.6
> #6  0xb5f05bd9 in QX11PixmapData::toImage() const () from 
/usr/lib/libQtGui.so.4
> #7  0xb5ef31fd in QPixmap::toImage() const () from /usr/lib/libQtGui.so.4
> #8  0xb76a91ce in KPixmapCache::Private::writeData(QString const&, QPixmap 
const&) () from /usr/lib/libkdeui.so.5
> #9  0xb76a9f30 in KPixmapCache::insert(QString const&, QPixmap const&) () 
from 
/usr/lib/libkdeui.so.5
> #10 0xb75f41db in KIconCache::insert(QString const&, QPixmap const&) () from 
/usr/lib/libkdeui.so.5
> #11 0xb75f4a62 in KIconCache::insert(QString const&, QPixmap const&, QString 
const&) () from /usr/lib/libkdeui.so.5
> #12 0xb75e8192 in KIconLoader::loadIcon(QString const&, KIconLoader::Group, 
int, int, QStringList const&, QString*, bool) const () from 
/usr/lib/libkdeui.so.5
> #13 0xb75ded74 in ?? () from /usr/lib/libkdeui.so.5
> #14 0xb5ec6c7a in QIcon::pixmap(QSize const&, QIcon::Mode, QIcon::State) 
const 
() from /usr/lib/libQtGui.so.4
> #15 0xb721be81 in TrackActionButton::reloadContent(QSize const&) () from 
/usr/lib/libamaroklib.so.1
> #16 0xb71fc2e2 in IconButton::resizeEvent(QResizeEvent*) () from 
/usr/lib/libamaroklib.so.1
> #17 0xb5e79982 in QWidget::event(QEvent*) () from /usr/lib/libQtGui.so.4
> #18 0xb5e228fc in QApplicationPrivate::notify_helper(QObject*, QEvent*) () 
from /usr/lib/libQtGui.so.4
> #19 0xb5e2a29e in QApplication::notify(QObject*, QEvent*) () from 
/usr/lib/libQtGui.so.4
> #20 0xb70b1c42 in App::notify(QObject*, QEvent*) () from 
/usr/lib/libamaroklib.so.1
> #21 0xb67dd32e in QCoreApplication::notifyInternal(QObject*, QEvent*) () 
from 
/usr/lib/libQtCore.so.4
> #22 0xb5e785af in QWidgetPrivate::sendPendingMoveAndResizeEvents(bool, bool) 
() from /usr/lib/libQtGui.so.4
> #23 0xb5e7f515 in QWidgetPrivate::show_helper() () from 
/usr/lib/libQtGui.so.4
> #24 0xb5e80a41 in QWidget::setVisible(bool) () from /usr/lib/libQtGui.so.4
> #25 0xb5e71d36 in QWidgetPrivate::_q_showIfNotHidden() () from 
/usr/lib/libQtGui.so.4
> #26 0xb5e7fcf0 in QWidget::qt_metacall(QMetaObject::Call, int, void**) () 
from 
/usr/lib/libQtGui.so.4
> #27 0xb71fbb0e in IconButton::qt_metacall(QMetaObject::Call, int, void**) () 
from /usr/lib/libamaroklib.so.1
> #28 0xb721c49e in TrackActionButton::qt_metacall(QMetaObject::Call, int, 
void**) () from /usr/lib/libamaroklib.so.1
> #29 0xb67ec04a in QMetaCallEvent::placeMetaCall(QObject*) () from 
/usr/lib/libQtCore.so.4
> #30 0xb67ed796 in QObject::event(QEvent*) () from /usr/lib/libQtCore.so.4
> #31 0xb5e79230 in QWidget::event(QEvent*) () from /usr/lib/libQtGui.so.4
> #32 0xb5e228fc in QApplicationPrivate::notify_helper(QObject*, QEvent*) () 
from /usr/lib/libQtGui.so.4
> #33 0xb5e2a29e in QApplication::notify(QObject*, QEvent*) () from 
/usr/lib/libQtGui.so.4
> #34 0xb70b1c42 in App::notify(QObject*, QEvent*) () from 
/usr/lib/libamaroklib.so.1
> #35 0xb67dd32e in QCoreApplication::notifyInternal(QObject*, QEvent*) () 
from 
/usr/lib/libQtCore.so.4
> #36 0xb67ddfdc in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, 
QThreadData*) () from /usr/lib/libQtCore.so.4
> #37 0xb67de19c in QCoreApplication::sendPostedEvents(QObject*, int) () from 
/usr/lib/libQtCore.so.4
> #38 0xb68094dd in ?? () from /usr/lib/libQtCore.so.4
> #39 0xb3b8e4c2 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
> #40 0xb3b91d98 in ?? () from /usr/lib/libglib-2.0.so.0
> #41 0xb3b91ebe in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
> #42 0xb6809011 in 
QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () 
from /usr/lib/libQtCore.so.4
> #43 0xb5ec429a in ?? () from /usr/lib/libQtGui.so.4
> #44 0xb67db98d in 
QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from 
/usr/lib/libQtCore.so.4
> #45 0xb67dbdd9 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () 
from /usr/lib/libQtCore.so.4
> #46 0xb67de270 in QCoreApplication::exec() () from /usr/lib/libQtCore.so.4
> #47 0xb5e22774 in QApplication::exec() () from /usr/lib/libQtGui.so.4
> #48 0x0805238b in main ()

So, judging by this, I'd say that either Qt is to blame, or the class 
KPixmapCache, which has been rewritten in KDE 4.5, since, well, it's a mess :) 
Crash prone and a general disaster. I think the easiest way to solve this bug 
would be to, when KDE 4.5 is released on your distro, to upgrade to it. KDE 
4.3.4 is a fairly old release (about 8 months now) and MANY bugs have been 
fixed since then. It seems like a crappy solution, but it should work. ;) 
Alternately, you could try to remove any album art, etc, which may be either 
embedded in the file itself, or in Amarok's cover manager, for said album.

And a small suggestion for in the future: reporting bugs to bugs.kde.org can 
give you far more developer eyes than posting to a user list can. You're also 
more likely to get a helpful response, and a timely response :)

Best
Ryan


-- 
Ryan Rix
== http://hackersramblings.wordpress.com | http://rix.si/ ==
== http://rix.si/page/contact/ if you need a word         ==
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: This is a digitally signed message part.
URL: <http://mail.kde.org/pipermail/kde-linux/attachments/20100626/855bb0fc/attachment.sig>


More information about the kde-linux mailing list