Version: 1.4.5 (using KDE KDE 3.5.6)
Installed from: Ubuntu Packages
Compiler: gcc (GCC) 4.1.2 20060928 (prerelease) (Ubuntu 4.1.1-13ubuntu5)
Looks like Amarok doesn't understand to stop trying to get Wikipedia information if it doesn't exist, but tries and tries, and fetches the page again and again from Wikipedia, resulting in constant job messages about fetching and that one can't switch to any other tabs in context view or it'll switch back to Wikipedia info one after about a few seconds.
If you already have Wikipedia tab open in context view and then switch song, it won't try to do the same, though. Only after you change to some other tab in context view and then back to Wikipedia one.
Actually I'm not 100% sure that this happens because info isn't available, but at least it happens when it isn't available.
Without an example of an artist/album or whatever that causes this the report is useless.
OK. Steps to reproduce (and some info I found about after making the report):
1. Set Wikipedia's locale to fi (I don't know if this can be reproduced with other locales as well, but with "English" locale I was not able to reproduce).
2. Start playing a song that doesn't have any Wikipedia information about it's artist, album or the song itself like this one: http://www.shadowgroundsgame.com/media/music/ShadowgroundsOST-01-MainTheme.mp3
3. Change active context view to something other than Wikipedia and then switch to Wikipedia one again
4. Amarok starts fetching Wikipedia information and keeps trying to fetch it in endless loop until the played song changes (or playing is stopped).
I don't know if this matters but my KDE language locale is British English and LOCALE environment variable is: fi_FI:fi:en_GB:en
Related or a dup to bug 142177.
*** Bug 142177 has been marked as a duplicate of this bug. ***
confirming, because its dupe was
I can confirm this bug. My locale is "de"
I can confirm this bug. My locale is "ru"
I can confirm this bug. My locale is "de".
I am using amarok 1.4.6 with kde 3.5.7.
SVN commit 695895 by markey:
Wikipedia artist lookup would freeze Amarok if the artist was not found and the locale was not English.
This was because of this nasty detail: QString.endsWidth( "" ) always returns true, not false.
M +2 -0 ChangeLog
M +5 -3 src/contextbrowser.cpp
--- branches/stable/extragear/multimedia/amarok/ChangeLog #695894:695895
@@ -12,6 +12,8 @@
Gosta <firstname.lastname@example.org>. (BR 142999)
+ * Wikipedia artist lookup would freeze Amarok if the artist was not found
+ and the locale was not English. (BR 142764)
* Cannot limit smart playlists to more than 1000 tracks. (BR 148084)
* Fixed the formatting in the "Extended Info" pane for podcasts.
* Don't show "Not Rated" for items rated with half a star. Patch by Tuomas
--- branches/stable/extragear/multimedia/amarok/src/contextbrowser.cpp #695894:695895
@@ -4115,20 +4115,22 @@
if( m_wiki.find( "var wgArticleId = 0" ) != -1 )
+ debug() << "Article not found." << endl;
// article was not found
- if( m_wikiCurrentEntry.endsWith( wikiArtistPostfix() ) )
+ if( !wikiArtistPostfix().isEmpty() && m_wikiCurrentEntry.endsWith( wikiArtistPostfix() ) )
m_wikiCurrentEntry = m_wikiCurrentEntry.left( m_wikiCurrentEntry.length() - wikiArtistPostfix().length() );
- else if( m_wikiCurrentEntry.endsWith( wikiAlbumPostfix() ) )
+ else if( !wikiAlbumPostfix().isEmpty() && m_wikiCurrentEntry.endsWith( wikiAlbumPostfix() ) )
m_wikiCurrentEntry = m_wikiCurrentEntry.left( m_wikiCurrentEntry.length() - wikiAlbumPostfix().length() );
- else if( m_wikiCurrentEntry.endsWith( wikiTrackPostfix() ) )
+ else if( !wikiTrackPostfix().isEmpty() && m_wikiCurrentEntry.endsWith( wikiTrackPostfix() ) )
m_wikiCurrentEntry = m_wikiCurrentEntry.left( m_wikiCurrentEntry.length() - wikiTrackPostfix().length() );