Summary: | Amarok Wikipedia applet crashes when playing streaming audio [@ WikipediaAppletPrivate::_pageLoadProgress] | ||
---|---|---|---|
Product: | [Applications] amarok | Reporter: | Paul Fee <paul.f.fee> |
Component: | Context View/Wikipedia | Assignee: | Amarok Developers <amarok-bugs-dist> |
Status: | RESOLVED FIXED | ||
Severity: | crash | CC: | ahepas1999, alvanx, bruninho.ro, chlorophyll273, chuchman, d.n.koska, e.crepieux, gilboad, gradkiss, hit_man2, hrvoje.senjan, Jens_Abraham, kasper, kde-bugs, kfunk, krdata, larry, laurent.lacote, lengau, lfranchi, lod2003, lymus, mail, mail, mindfilled75, myriam, rdieter, samuel2, saulmoncada, simon.esneault, sukkamehu, uglyog, xeno, yakov.shereshevsky, yvan.broccard |
Priority: | HI | Keywords: | regression, release_blocker |
Version: | 2.4-GIT | ||
Target Milestone: | 2.5 | ||
Platform: | Fedora RPMs | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | 2.5 | |
Sentry Crash Report: | |||
Attachments: |
New crash information added by DrKonqi
New crash information added by DrKonqi New crash information added by DrKonqi New crash information added by DrKonqi New crash information added by DrKonqi New crash information added by DrKonqi New crash information added by DrKonqi |
Description
Paul Fee
2011-08-10 13:00:32 UTC
I can confirm this problem. kdebase-workspace-4.7.0-2.fc15.i686 phonon-4.5.0-2.fc15.i686 amarok-2.4.3-1.fc15.i686 qt-4.8.0-0.6.beta1.fc15.i686 Changing status based on comments. Could you both please specify which phonon backend you are using? I've tried VLC, GStreamer and Xine backends it happens on all of them. I was using the default backend on my system, which turns out to be GStreamer. I haven't tried other backends. *** Bug 280038 has been marked as a duplicate of this bug. *** Could you all please try removing the amarok* files in $HOME/.kde/share/config/ and try again? Removing config files was my one of the first steps in the process of troubleshooting this issue. To make sure I've removed all the files related to Amarok from tmp and cache dirs, and config files from ~/.kde/share/apps and ~/.kde/share/config The problem still persist Im also using gstreamer as backend (default).... delelting the config-file does not help anything... i can confirm it just crashes when the wikipedia applet is activated. So for me as workaround i deactivate this applet.... *** Bug 280213 has been marked as a duplicate of this bug. *** You all use Qt 4.8 apparently, so this might be a hint. FWIW, I can't reproduce this here, using Amarok 2.4.3 on Kubuntu Oneiric alpha, Qt 4.7.3, KDE 4.7.0 As far as I can see, it looks like a collision between qt 4.8 beta and the wikipedia applet. - Gilboa Amarok requires Qt 4.6, so any regressions caused by newer Qt version should be reported upstream as it breaks backwards compatibility. Hello Myriam, Regarding closing this and marking it Resolved/Upstream. Does that mean you or someone has already reported it to Qt or are you closing it from a KDE viewpoint and leaving it to someone else to report it upstream? If it has been reported upstream, is there a link to the upstream bug so we can follow its progress there? If it's back to us Qt 4.8 users to contact the upstream project have you advice on how to do this? Would you suggest going straight to Nokia (http://qt.nokia.com/support) or via the distro which has provided the Qt 4.8 beta packages to me (Fedora)? Thanks, Paul This is from the KDE POV indeed. The bug needs to be reported to Nokia through their bug tracker https://bugreports.qt.nokia.com and provide a test case. See also this blog post about the HowTo: http://labs.qt.nokia.com/2010/03/02/how-to-file-a-qt-bug-report-in-the-new-bug-tracker/ If your distribution can help you with that I don't know, you should ask them though, since they are shipping the beta package. *** Bug 281052 has been marked as a duplicate of this bug. *** *** Bug 281214 has been marked as a duplicate of this bug. *** *** Bug 281769 has been marked as a duplicate of this bug. *** Created attachment 63558 [details]
New crash information added by DrKonqi
amarok (2.4-GIT) on KDE Platform 4.7.1 (4.7.1) using Qt 4.7.4
- What I was doing when the application crashed:
Created a playlist and removed one album from the playlist when the crash happened.
Apparently this concerns Qt 4.7.4 onwards, reopening.
-- Backtrace (Reduced):
#7 0x019f8748 in QString::operator== (this=0x244c8c60, other=...) at tools/qstring.cpp:2140
#8 0x05e23cfb in QProgressBar::setFormat (this=0x640061, format=...) at widgets/qprogressbar.cpp:581
#9 0x0826afa6 in WikipediaAppletPrivate::_pageLoadProgress (this=0x94dbd38, progress=100) at /home/myriam/kde/src/amarok/src/context/applets/wikipedia/WikipediaApplet.cpp:483
#10 0x0826d43f in WikipediaApplet::qt_metacall (this=0x94d6470, _c=QMetaObject::InvokeMetaMethod, _id=20, _a=0xbface088) at /home/myriam/kde/build/amarok/src/context/applets/wikipedia/WikipediaApplet.moc:135
#11 0x01ab2b7d in metacall (argv=0xbface088, idx=91, cl=QMetaObject::InvokeMetaMethod, object=0x94d6470) at kernel/qmetaobject.cpp:237
Since we are going to depend on a newer Qt version soon, this is a regression and also an upstream bug in Qt, breaking the compatibility. *** Bug 281781 has been marked as a duplicate of this bug. *** *** Bug 281819 has been marked as a duplicate of this bug. *** Created attachment 63576 [details]
New crash information added by DrKonqi
amarok (2.4.3) on KDE Platform 4.7.1 (4.7.1) using Qt 4.7.4
This appears to happen no matter what filetype is played, and occurs even on a newly-opened copy of Amarok.
-- Backtrace (Reduced):
#6 QProgressBar::setFormat (this=0x1e0, format=...) at widgets/qprogressbar.cpp:581
[...]
#10 0x00007f103a660681 in QGraphicsWebView::loadProgress (this=<optimized out>, _t1=100) at ./moc_qgraphicswebview.cpp:221
#11 0x00007f103a6609d6 in QGraphicsWebView::qt_metacall (this=0x7f10208e56e0, _c=QMetaObject::InvokeMetaMethod, _id=2, _a=0x7fffc886bdf0) at ./moc_qgraphicswebview.cpp:144
#12 0x00007f10393db050 in KGraphicsWebView::qt_metacall (this=0x7f10208e56e0, _c=QMetaObject::InvokeMetaMethod, _id=<optimized out>, _a=0x7fffc886bdf0) at ./kgraphicswebview.moc:74
[...]
#14 0x00007f103a663071 in QWebPage::loadProgress (this=<optimized out>, _t1=100) at ./moc_qwebpage.cpp:369
Created attachment 63577 [details]
New crash information added by DrKonqi
amarok (2.4.3) on KDE Platform 4.7.1 (4.7.1) using Qt 4.7.4
- What I was doing when the application crashed:
Starter playing composition, after a few seconds of playback amarok was crashed with SEGV (Segmentation Fault) signal. I disabled Wikipedia applet and crash disappeared amarok works fine.
-- Backtrace (Reduced):
#6 QProgressBar::setFormat (this=0x1e0, format=...) at widgets/qprogressbar.cpp:581
#7 0x00007f871439bba1 in WikipediaAppletPrivate::_pageLoadProgress (this=0x19854e0, progress=100) at ../../../../../src/context/applets/wikipedia/WikipediaApplet.cpp:482
#8 0x00007f87143a0b94 in WikipediaApplet::qt_metacall (this=0x19890d0, _c=QMetaObject::InvokeMetaMethod, _id=<optimized out>, _a=0x7fff0abb9910) at ./WikipediaApplet.moc:135
[...]
#10 0x00007f873b15c681 in QGraphicsWebView::loadProgress(int) () from /usr/lib/x86_64-linux-gnu/libQtWebKit.so.4
#11 0x00007f873b15c9d6 in QGraphicsWebView::qt_metacall(QMetaObject::Call, int, void**) () from /usr/lib/x86_64-linux-gnu/libQtWebKit.so.4
*** Bug 281846 has been marked as a duplicate of this bug. *** *** Bug 281872 has been marked as a duplicate of this bug. *** *** Bug 281919 has been marked as a duplicate of this bug. *** Created attachment 63620 [details]
New crash information added by DrKonqi
amarok (2.4-GIT) on KDE Platform 4.7.1 (4.7.1) using Qt 4.7.4
- What I was doing when the application crashed:
Opening wikipedia pplet crashed Amarok compiled from todays master (13. Septemeber), using all backends, compiled againt QT 4.7.4
-- Backtrace (Reduced):
#6 QProgressBar::setFormat (this=0x1e0, format=...) at widgets/qprogressbar.cpp:581
#7 0x00007f4383c64ba1 in WikipediaAppletPrivate::_pageLoadProgress (this=0x2609b90, progress=100) at ../../../../../src/context/applets/wikipedia/WikipediaApplet.cpp:483
#8 0x00007f4383c69b94 in WikipediaApplet::qt_metacall (this=0x25936d0, _c=QMetaObject::InvokeMetaMethod, _id=<optimized out>, _a=0x7fff2c879fd0) at ./WikipediaApplet.moc:135
[...]
#10 0x00007f43d1b26681 in QGraphicsWebView::loadProgress (this=<optimized out>, _t1=100) at ./moc_qgraphicswebview.cpp:221
#11 0x00007f43d1b269d6 in QGraphicsWebView::qt_metacall (this=0x24da150, _c=QMetaObject::InvokeMetaMethod, _id=2, _a=0x7fff2c87a160) at ./moc_qgraphicswebview.cpp:144
*** Bug 281986 has been marked as a duplicate of this bug. *** Created attachment 63643 [details]
New crash information added by DrKonqi
amarok (2.4.3) on KDE Platform 4.7.1 (4.7.1) using Qt 4.7.4
- What I was doing when the application crashed:
started amarok, a few apps opened (konsole, thunderbird, chrome)
-- Backtrace (Reduced):
#6 0x00007ffccff0d206 in QString::operator== (this=0x7ffcae907a20, other=...) at tools/qstring.cpp:2140
#7 0x00007ffcd0df82ac in QProgressBar::setFormat (this=0x347c970, format=...) at widgets/qprogressbar.cpp:581
#8 0x00007ffca0b96ba1 in WikipediaAppletPrivate::_pageLoadProgress (this=0x34fdfa0, progress=100) at ../../../../../src/context/applets/wikipedia/WikipediaApplet.cpp:482
#9 0x00007ffca0b9bb94 in WikipediaApplet::qt_metacall (this=0x34753d0, _c=QMetaObject::InvokeMetaMethod, _id=<optimized out>, _a=0x7fff63237250) at ./WikipediaApplet.moc:135
[...]
#11 0x00007ffcc6557681 in QGraphicsWebView::loadProgress(int) () from /usr/lib/x86_64-linux-gnu/libQtWebKit.so.4
Created attachment 63645 [details]
New crash information added by DrKonqi
amarok (2.4.3) on KDE Platform 4.7.1 (4.7.1) using Qt 4.7.4
- What I was doing when the application crashed:
Filled the Playlist, it plays 2 Seconds, then crash
-- Backtrace (Reduced):
#6 QProgressBar::setFormat (this=0x1e0, format=...) at widgets/qprogressbar.cpp:581
#7 0x00007f93631d0ba1 in WikipediaAppletPrivate::_pageLoadProgress (this=0x30c61f0, progress=100) at ../../../../../src/context/applets/wikipedia/WikipediaApplet.cpp:482
#8 0x00007f93631d5b94 in WikipediaApplet::qt_metacall (this=0x30c6c20, _c=QMetaObject::InvokeMetaMethod, _id=<optimized out>, _a=0x7fffc86fcdb0) at ./WikipediaApplet.moc:135
[...]
#10 0x00007f9390acf681 in QGraphicsWebView::loadProgress(int) () from /usr/lib/x86_64-linux-gnu/libQtWebKit.so.4
#11 0x00007f9390acf9d6 in QGraphicsWebView::qt_metacall(QMetaObject::Call, int, void**) () from /usr/lib/x86_64-linux-gnu/libQtWebKit.so.4
Hi, FYI: I opened a report [1] at Nokia.(QT) for this issue. Martin Kho [1] https://bugreports.qt.nokia.com/browse/QTBUG-21469 *** Bug 282005 has been marked as a duplicate of this bug. *** *** Bug 282041 has been marked as a duplicate of this bug. *** Created attachment 63702 [details]
New crash information added by DrKonqi
amarok (2.4.3) on KDE Platform 4.7.1 (4.7.1) using Qt 4.7.4
- What I was doing when the application crashed:
Just started Amarok as usual, crashed as soon as I try to play, was fine before my system updates where QT libraries were upgraded (to 4.7.4).
-- Backtrace (Reduced):
#6 QProgressBar::setFormat (this=0x1e0, format=...) at widgets/qprogressbar.cpp:581
#7 0x00007f05c3346ba1 in WikipediaAppletPrivate::_pageLoadProgress (this=0x323c530, progress=100) at ../../../../../src/context/applets/wikipedia/WikipediaApplet.cpp:482
#8 0x00007f05c334bb94 in WikipediaApplet::qt_metacall (this=0x323cb50, _c=QMetaObject::InvokeMetaMethod, _id=<optimized out>, _a=0x7fff5659a5a0) at ./WikipediaApplet.moc:135
[...]
#10 0x00007f05eb95d681 in QGraphicsWebView::loadProgress (this=<optimized out>, _t1=100) at ./moc_qgraphicswebview.cpp:221
#11 0x00007f05eb95d9d6 in QGraphicsWebView::qt_metacall (this=0x7f05d437c000, _c=QMetaObject::InvokeMetaMethod, _id=2, _a=0x7fff5659a730) at ./moc_qgraphicswebview.cpp:144
Why should that be a Qt bug? The last backtrace clearly shows that WikipediaAppletPrivate::_pageLoadProgress() calls QProgressBar::setFormat() with an invalid widget pointer. I haven't checked where it does get that pointer from, but I doubt that Qt passes you an invalid widget. (In reply to comment #36) > Why should that be a Qt bug? The last backtrace clearly shows that > WikipediaAppletPrivate::_pageLoadProgress() calls QProgressBar::setFormat() > with an invalid widget pointer. I haven't checked where it does get that > pointer from, but I doubt that Qt passes you an invalid widget. Please have a look at the related report. This only happens with Qt 4.7.4 and higher. BTW, did you see that i reopened the report and changed its importance? If it were Qt only I would have left it closed as upstream... *** Bug 282159 has been marked as a duplicate of this bug. *** *** Bug 282156 has been marked as a duplicate of this bug. *** *** Bug 282231 has been marked as a duplicate of this bug. *** *** Bug 282262 has been marked as a duplicate of this bug. *** *** Bug 282263 has been marked as a duplicate of this bug. *** *** Bug 282294 has been marked as a duplicate of this bug. *** *** Bug 282311 has been marked as a duplicate of this bug. *** Git commit 027340cd9a8e01762d0ec0aafb46f4b05a7d29e8 by Kevin Funk. Committed on 18/09/2011 at 23:37. Pushed by kfunk into branch 'master'. Fix crash in WikipediaApplet. The crash happened because of the loadProgress() signal triggering the _pageLoadProgress() slot in the Wikipedia applet *after* the _pageLoadFinished() has been triggered already. That caused a null-pointer dereference. The actual problem is that we are not disconnecting from the webView loadProgress() signal after some page loading has been finished. Also remove some not-so-pretty static_assert statements and use a more type-safe approach to keep track of the progress bar proxy widget. Use some soft asserts to avoid the worst-case when the proxy widget may have been deleted somehow. BUG: 279813 FIXED-IN: 2.5 M +27 -10 src/context/applets/wikipedia/WikipediaApplet.cpp M +2 -0 src/context/applets/wikipedia/WikipediaApplet_p.h http://commits.kde.org/amarok/027340cd9a8e01762d0ec0aafb46f4b05a7d29e8 Most likely a bug in the order of loadProgress and loadFinished signals in QWebView that got introduced with Qt 4.7.4. These are the upstream reports dealing with this bug: * https://bugs.webkit.org/show_bug.cgi?id=66016 * https://bugs.webkit.org/show_bug.cgi?id=28851 Those using Oneiric, could you please upgrade and check? There was a fix of the QtWebkit bug released today. Didn't fix it for me, still crashing 1 second after starting playback using Oneiric with all available upgrades. Apparently it is not in the repositories yet, the libqtwebkit4 file here still says week 34 which was end of August. For you interest, in case some people are not aware of this: You can temporarily work-around this bug by removing the Wikipedia applet before playing anything. Thank u for that great information, it is working! But still - using Clementine till this bug is fixed completly ;) *** Bug 282366 has been marked as a duplicate of this bug. *** This is fixed for me with the latest QtWebkit update: libqtwebkit4: Installed: 2.2~2011week36-0ubuntu1 Candidate: 2.2~2011week36-0ubuntu1 Version table: *** 2.2~2011week36-0ubuntu1 0 500 http://archive.ubuntu.com/ubuntu/ oneiric/main amd64 Packages 100 /var/lib/dpkg/status Also, it's working without commit 027340cd9a8e01762d0ec0aafb46f4b05a7d29e8 by Kevin Funk Hi, In Fedora qtwebkit was updated to version qtwebkit-2.2.0-0.1.rc1.fc16.x86_64. This version solves the issue. Kevin Funk's commit isn't used/necessary. Thanks, Martin Kho Great news, thanks all for testing :) Ok, problem is gone after the upgrade. Thanks, ErwinC In reply to comment #47) > Those using Oneiric, could you please upgrade and check? There was a fix of the > QtWebkit bug released today. *** Bug 287273 has been marked as a duplicate of this bug. *** *** Bug 289301 has been marked as a duplicate of this bug. *** |