Go to:
Gentoo Home
Documentation
Forums
Lists
Bugs
Planet
Store
Wiki
Get Gentoo!
Gentoo's Bugzilla – Attachment 316471 Details for
Bug 419509
media-sound/amarok-2.5.90 (2.6_beta1) version bump
Home
|
New
–
[Ex]
|
Browse
|
Search
|
Privacy Policy
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Patch for the ebuild that adds a patch from upstream that makes it work with liblastfm-1
0001-media-sound-amarok-Added-patch-from-upstream-that-ma.patch (text/plain), 29.15 KB, created by
Andrei Mihăilă
on 2012-06-27 19:30:36 UTC
(
hide
)
Description:
Patch for the ebuild that adds a patch from upstream that makes it work with liblastfm-1
Filename:
MIME Type:
Creator:
Andrei Mihăilă
Created:
2012-06-27 19:30:36 UTC
Size:
29.15 KB
patch
obsolete
>From d3616b3462d229a7392c10a69660f8060b46684d Mon Sep 17 00:00:00 2001 >From: Andrei Mihaila <andrei.mihaila@gmail.com> >Date: Wed, 27 Jun 2012 22:16:48 +0300 >Subject: [PATCH] [media-sound/amarok] Added patch from upstream that makes it > work with liblastfm-1 > >--- > media-sound/amarok/amarok-2.5.90.ebuild | 4 + > media-sound/amarok/files/amarok-liblastfm-1.patch | 722 +++++++++++++++++++++ > 2 files changed, 726 insertions(+), 0 deletions(-) > create mode 100644 media-sound/amarok/files/amarok-liblastfm-1.patch > >diff --git a/media-sound/amarok/amarok-2.5.90.ebuild b/media-sound/amarok/amarok-2.5.90.ebuild >index cccbabe..604fe06 100644 >--- a/media-sound/amarok/amarok-2.5.90.ebuild >+++ b/media-sound/amarok/amarok-2.5.90.ebuild >@@ -87,6 +87,10 @@ src_prepare() { > || die "Removing include of MacroOptionalAddSubdirectory failed." > fi > >+ if has_version '>=media-libs/liblastfm-1.0.0'; then >+ epatch "${FILESDIR}/${PN}-liblastfm-1.patch" >+ fi >+ > kde4-base_src_prepare > } > >diff --git a/media-sound/amarok/files/amarok-liblastfm-1.patch b/media-sound/amarok/files/amarok-liblastfm-1.patch >new file mode 100644 >index 0000000..582062e >--- /dev/null >+++ b/media-sound/amarok/files/amarok-liblastfm-1.patch >@@ -0,0 +1,722 @@ >+diff --git a/src/services/ampache/LastfmInfoParser.cpp b/src/services/ampache/LastfmInfoParser.cpp >+index 50cb529516ce1358785fa04824cd32642a526495..0c6dd8fe9f6a491a88dfb062a09e2652976df0ef 100644 >+--- a/src/services/ampache/LastfmInfoParser.cpp >++++ b/src/services/ampache/LastfmInfoParser.cpp >+@@ -20,8 +20,7 @@ >+ #include "core/support/Amarok.h" >+ #include "core/support/Debug.h" >+ >+-#include <lastfm/XmlQuery> >+-#include <lastfm/ws.h> >++#include <lastfm/XmlQuery.h> >+ >+ #include <KLocale> >+ >+@@ -55,7 +54,8 @@ void LastfmInfoParser::onGetTrackInfo() >+ { >+ case QNetworkReply::NoError: >+ { >+- lastfm::XmlQuery lfm = m_jobs[ "getTrackInfo" ]->readAll(); >++ lastfm::XmlQuery lfm; >++ lfm.parse( m_jobs[ "getTrackInfo" ]->readAll() ); >+ lastfm::XmlQuery wiki = lfm["track"]["wiki"]; >+ const QString contentText = wiki["content"].text(); >+ const QString publishedDate = wiki["published"].text(); >+@@ -103,7 +103,8 @@ void LastfmInfoParser::onGetAlbumInfo() >+ { >+ case QNetworkReply::NoError: >+ { >+- lastfm::XmlQuery lfm = m_jobs[ "getAlbumInfo" ]->readAll(); >++ lastfm::XmlQuery lfm; >++ lfm.parse( m_jobs[ "getAlbumInfo" ]->readAll() ); >+ lastfm::XmlQuery wiki = lfm["album"]["wiki"]; >+ const QString summaryText = wiki["summary"].text(); >+ const QString contentText = wiki["content"].text(); >+@@ -155,7 +156,8 @@ void LastfmInfoParser::onGetArtistInfo() >+ { >+ case QNetworkReply::NoError: >+ { >+- lastfm::XmlQuery lfm = m_jobs[ "getArtistInfo" ]->readAll(); >++ lastfm::XmlQuery lfm; >++ lfm.parse( m_jobs[ "getArtistInfo" ]->readAll() ); >+ debug() << lfm.text(); >+ lastfm::XmlQuery bio = lfm["artist"]["bio"]; >+ const QString summaryText = bio["summary"].text(); >+diff --git a/src/services/lastfm/LastFmService.cpp b/src/services/lastfm/LastFmService.cpp >+index a14d989b3fac81e545df095adee36580b052fea7..c9898aa1fcd16ca8070eec66231db23c1beddff2 100644 >+--- a/src/services/lastfm/LastFmService.cpp >++++ b/src/services/lastfm/LastFmService.cpp >+@@ -46,8 +46,8 @@ >+ #include "widgets/SearchWidget.h" >+ #include "NetworkAccessManagerProxy.h" >+ >+-#include <lastfm/Audioscrobbler> // from liblastfm >+-#include <lastfm/XmlQuery> >++#include <lastfm/Audioscrobbler.h> // from liblastfm >++#include <lastfm/XmlQuery.h> >+ >+ #include <KLocale> >+ #include <KPasswordDialog> >+@@ -224,10 +224,7 @@ LastFmService::init() >+ { >+ // set the global static Lastfm::Ws stuff >+ lastfm::ws::ApiKey = Amarok::lastfmApiKey(); >+- lastfm::ws::SharedSecret = "fe0dcde9fcd14c2d1d50665b646335e9"; >+- // testing w/ official keys >+- //Ws::SharedSecret = "73582dfc9e556d307aead069af110ab8"; >+- //Ws::ApiKey = "c8c7b163b11f92ef2d33ba6cd3c2c3c3"; >++ lastfm::ws::SharedSecret = Amarok::lastfmApiSharedSecret(); >+ m_userNameArray = qstrdup( m_userName.toLatin1().data() ); >+ lastfm::ws::Username = m_userNameArray; >+ if( lastfm::nam() != The::networkAccessManager() ) >+@@ -309,7 +306,8 @@ LastFmService::onAuthenticated() >+ case QNetworkReply::NoError: >+ { >+ >+- lastfm::XmlQuery lfm = lastfm::XmlQuery( m_jobs[ "auth" ]->readAll() ); >++ lastfm::XmlQuery lfm; >++ lfm.parse( m_jobs[ "auth" ]->readAll() ); >+ LastFmServiceConfig config; >+ >+ if( lfm.children( "error" ).size() > 0 ) >+@@ -359,10 +357,8 @@ LastFmService::onGetUserInfo() >+ { >+ case QNetworkReply::NoError: >+ { >+- try >+- { >+- lastfm::XmlQuery lfm( m_jobs[ "getUserInfo" ]->readAll() ); >+- >++ lastfm::XmlQuery lfm; >++ if( lfm.parse( m_jobs[ "getUserInfo" ]->readAll() ) ) { >+ m_country = lfm["user"]["country"].text(); >+ m_age = lfm["user"]["age"].text(); >+ m_gender = lfm["user"]["gender"].text(); >+@@ -381,9 +377,10 @@ LastFmService::onGetUserInfo() >+ } >+ updateProfileInfo(); >+ >+- } catch( lastfm::ws::ParseError& e ) >++ } >++ else >+ { >+- debug() << "Got exception in parsing from last.fm:" << e.what(); >++ debug() << "Got exception in parsing from last.fm:" << lfm.parseError().message(); >+ } >+ break; >+ } case QNetworkReply::AuthenticationRequiredError: >+diff --git a/src/services/lastfm/LastFmServiceCollection.cpp b/src/services/lastfm/LastFmServiceCollection.cpp >+index 22f49ec0fe8e9f917f8a26f9d546ad147ad04e5b..0ed5505c1cd1350c85f21964e772f3c36cf6ae3e 100644 >+--- a/src/services/lastfm/LastFmServiceCollection.cpp >++++ b/src/services/lastfm/LastFmServiceCollection.cpp >+@@ -26,7 +26,7 @@ >+ #include "core-impl/collections/support/MemoryQueryMaker.h" >+ >+ #include <lastfm/ws.h> >+-#include <lastfm/XmlQuery> >++#include <lastfm/XmlQuery.h> >+ >+ #include <QNetworkReply> >+ >+@@ -154,10 +154,9 @@ void LastFmServiceCollection::slotAddNeighboursLoved() >+ case QNetworkReply::NoError: >+ { >+ // iterate through each neighbour >+- try >++ lastfm::XmlQuery lfm; >++ if( lfm.parse( m_jobs[ "user.getNeighbours" ]->readAll() ) ) >+ { >+- lastfm::XmlQuery lfm( m_jobs[ "user.getNeighbours" ]->readAll() ); >+- >+ foreach( const lastfm::XmlQuery &e, lfm[ "neighbours" ].children( "user" ) ) >+ { >+ const QString name = e[ "name" ].text(); >+@@ -168,9 +167,10 @@ void LastFmServiceCollection::slotAddNeighboursLoved() >+ addTrack( trackPtr ); >+ } >+ >+- } catch( lastfm::ws::ParseError& e ) >++ } >++ else >+ { >+- debug() << "Got exception in parsing from last.fm:" << e.what(); >++ debug() << "Got exception in parsing from last.fm:" << lfm.parseError().message(); >+ } >+ break; >+ } >+@@ -195,15 +195,14 @@ void LastFmServiceCollection::slotAddNeighboursPersonal() >+ case QNetworkReply::NoError: >+ { >+ // iterate through each neighbour >+- try >++ if( !m_jobs[ "user.getNeighbours" ] ) >++ { >++ debug() << "BAD! got no result object"; >++ return; >++ } >++ lastfm::XmlQuery lfm; >++ if( lfm.parse( m_jobs[ "user.getNeighbours" ]->readAll() ) ) >+ { >+- if( !m_jobs[ "user.getNeighbours" ] ) >+- { >+- debug() << "BAD! got no result object"; >+- return; >+- } >+- lastfm::XmlQuery lfm( m_jobs[ "user.getNeighbours" ]->readAll() ); >+- >+ // iterate through each neighbour >+ foreach( const lastfm::XmlQuery &e, lfm[ "neighbours" ].children( "user" ) ) >+ { >+@@ -218,9 +217,10 @@ void LastFmServiceCollection::slotAddNeighboursPersonal() >+ >+ // should be safe, as both slots SHOULD get called before we return to the event loop... >+ m_jobs[ "user.getNeighbours" ]->deleteLater(); >+- } catch( lastfm::ws::ParseError& e ) >++ } >++ else >+ { >+- debug() << "Got exception in parsing from last.fm:" << e.what(); >++ debug() << "Got exception in parsing from last.fm:" << lfm.parseError().message(); >+ } >+ break; >+ } >+@@ -248,10 +248,9 @@ void LastFmServiceCollection::slotAddFriendsLoved() >+ { >+ case QNetworkReply::NoError: >+ { >+- try >++ lastfm::XmlQuery lfm; >++ if( lfm.parse( m_jobs[ "user.getFriends" ]->readAll() ) ) >+ { >+- lastfm::XmlQuery lfm( m_jobs[ "user.getFriends" ]->readAll() ); >+- >+ foreach( const lastfm::XmlQuery &e, lfm[ "friends" ].children( "user" ) ) >+ { >+ const QString name = e[ "name" ].text(); >+@@ -261,9 +260,10 @@ void LastFmServiceCollection::slotAddFriendsLoved() >+ addTrack( trackPtr ); >+ } >+ >+- } catch( lastfm::ws::ParseError& e ) >++ } >++ else >+ { >+- debug() << "Got exception in parsing from last.fm:" << e.what(); >++ debug() << "Got exception in parsing from last.fm:" << lfm.parseError().message(); >+ } >+ break; >+ } >+@@ -293,10 +293,9 @@ void LastFmServiceCollection::slotAddFriendsPersonal() >+ { >+ case QNetworkReply::NoError: >+ { >+- try >++ lastfm::XmlQuery lfm; >++ if( lfm.parse( m_jobs[ "user.getFriends" ]->readAll() ) ) >+ { >+- lastfm::XmlQuery lfm( m_jobs[ "user.getFriends" ]->readAll() ); >+- >+ foreach( const lastfm::XmlQuery &e, lfm[ "friends" ].children( "user" ) ) >+ { >+ const QString name = e[ "name" ].text(); >+@@ -306,9 +305,10 @@ void LastFmServiceCollection::slotAddFriendsPersonal() >+ addTrack( trackPtr ); >+ } >+ >+- } catch( lastfm::ws::ParseError& e ) >++ } >++ else >+ { >+- debug() << "Got exception in parsing from last.fm:" << e.what(); >++ debug() << "Got exception in parsing from last.fm:" << lfm.parseError().message(); >+ } >+ break; >+ } >+diff --git a/src/services/lastfm/LastFmServiceSettings.cpp b/src/services/lastfm/LastFmServiceSettings.cpp >+index 2eff71e51dc30605b4d395323a01e24b8fa25d1e..9f67559b79fb218d4c5dba769fe98dcf5cea4b8b 100644 >+--- a/src/services/lastfm/LastFmServiceSettings.cpp >++++ b/src/services/lastfm/LastFmServiceSettings.cpp >+@@ -23,9 +23,9 @@ >+ #include "NetworkAccessManagerProxy.h" >+ #include "ui_LastFmConfigWidget.h" >+ >+-#include <lastfm/Audioscrobbler> // from liblastfm >++#include <lastfm/Audioscrobbler.h> // from liblastfm >+ #include <lastfm/ws.h> >+-#include <lastfm/XmlQuery> >++#include <lastfm/XmlQuery.h> >+ >+ #include <QCryptographicHash> >+ #include <QNetworkAccessManager> >+@@ -100,7 +100,7 @@ LastFmServiceSettings::testLogin() >+ m_configDialog->testLogin->setText( i18n( "Testing..." ) ); >+ // set the global static Lastfm::Ws stuff >+ lastfm::ws::ApiKey = Amarok::lastfmApiKey(); >+- lastfm::ws::SharedSecret = "fe0dcde9fcd14c2d1d50665b646335e9"; >++ lastfm::ws::SharedSecret = Amarok::lastfmApiSharedSecret(); >+ lastfm::ws::Username = qstrdup( m_configDialog->kcfg_ScrobblerUsername->text().toLatin1().data() ); >+ if( lastfm::nam() != The::networkAccessManager() ) >+ lastfm::setNetworkAccessManager( The::networkAccessManager() ); >+@@ -126,7 +126,8 @@ LastFmServiceSettings::onAuthenticated() >+ { >+ DEBUG_BLOCK >+ >+- lastfm::XmlQuery lfm = lastfm::XmlQuery( m_authQuery->readAll() ); >++ lastfm::XmlQuery lfm; >++ lfm.parse( m_authQuery->readAll() ); >+ >+ switch( m_authQuery->error() ) >+ { >+diff --git a/src/services/lastfm/LastFmTreeModel.h b/src/services/lastfm/LastFmTreeModel.h >+index ac171a57a36ec6bb5443035b11bea77e4ae94720..3aa2061afce8bb6c57e1a7f1cf0717af8f52a7d1 100644 >+--- a/src/services/lastfm/LastFmTreeModel.h >++++ b/src/services/lastfm/LastFmTreeModel.h >+@@ -22,7 +22,7 @@ >+ #include "core/meta/Meta.h" >+ #include "WeightedStringList.h" >+ >+-#include <lastfm/User> >++#include <lastfm/User.h> >+ >+ #include <QAbstractItemModel> >+ #include <QHash> >+@@ -136,7 +136,7 @@ private: >+ LastFmTreeItem *m_myTopArtists; >+ >+ QString m_userName; >+- lastfm::AuthenticatedUser m_user; >++ lastfm::User m_user; >+ >+ QStringList m_friends; >+ QStringList m_neighbors; >+diff --git a/src/services/lastfm/LastFmTreeModel.cpp b/src/services/lastfm/LastFmTreeModel.cpp >+index 2d94d67c5fe10bfc1abba3dd9848fd1177daa518..4d47d4201bdd6bfc33ff58a4c94d75ff6a70ec46 100644 >+--- a/src/services/lastfm/LastFmTreeModel.cpp >++++ b/src/services/lastfm/LastFmTreeModel.cpp >+@@ -26,8 +26,8 @@ >+ #include "AmarokMimeData.h" >+ >+ #include <lastfm/ws.h> >+-#include <lastfm/Tag> >+-#include <lastfm/XmlQuery> >++#include <lastfm/Tag.h> >++#include <lastfm/XmlQuery.h> >+ >+ #include <KIcon> >+ #include <KLocale> >+@@ -68,11 +68,12 @@ LastFmTreeModel::slotAddNeighbors () >+ { >+ DEBUG_BLOCK >+ >+- try >+- { >+ // Iterate over each neighbor, in two passes: 1) Get data 2) Sort data, store in model >+ >+- lastfm::XmlQuery lfm( m_jobs[ "getNeighbours" ]->readAll() ); >++ lastfm::XmlQuery lfm; >++ lfm.parse( m_jobs[ "getNeighbours" ]->readAll() ); >++ if( lfm.parseError().enumValue() == lastfm::ws::NoError ) >++ { >+ foreach( const lastfm::XmlQuery &e, lfm[ "neighbours" ].children ( "user" ) ) >+ { >+ const QString name = e[ "name" ].text(); >+@@ -88,11 +89,11 @@ LastFmTreeModel::slotAddNeighbors () >+ appendUserStations( neighbor, name ); >+ } >+ m_neighbors.sort(); >++ } else { >++ debug() << "Got exception in parsing from last.fm:" << lfm.parseError().message(); >++ return; >+ } >+- catch( lastfm::ws::ParseError e ) >+- { >+- debug() << "Got exception in parsing from last.fm:" << e.what(); >+- } >++ >+ emitRowChanged(LastFm::Neighbors); >+ m_jobs[ "getNeighbours" ]->deleteLater(); >+ } >+@@ -102,11 +103,11 @@ LastFmTreeModel::slotAddFriends () >+ { >+ DEBUG_BLOCK >+ >+- try >+- { >+- // Iterate over each friend, in two passes: 1) Get data 2) Sort data, store in model >++ // Iterate over each friend, in two passes: 1) Get data 2) Sort data, store in model >+ >+- lastfm::XmlQuery lfm( m_jobs[ "getFriends" ]->readAll() ); >++ lastfm::XmlQuery lfm; >++ if( lfm.parse( m_jobs[ "getFriends" ]->readAll() ) ) >++ { >+ foreach( const lastfm::XmlQuery &e, lfm[ "friends" ].children ( "user" ) ) >+ { >+ const QString name = e[ "name" ].text(); >+@@ -123,11 +124,11 @@ LastFmTreeModel::slotAddFriends () >+ appendUserStations( afriend, name ); >+ } >+ m_friends.sort(); >++ } else { >++ debug() << "Got exception in parsing from last.fm:" << lfm.parseError().message(); >++ return; >+ } >+- catch( lastfm::ws::ParseError e ) >+- { >+- debug() << "Got exception in parsing from last.fm:" << e.what(); >+- } >++ >+ emitRowChanged(LastFm::Friends); >+ m_jobs[ "getFriends" ]->deleteLater(); >+ } >+@@ -137,10 +138,9 @@ LastFmTreeModel::slotAddTopArtists () >+ { >+ DEBUG_BLOCK >+ WeightedStringList list; >+- try >++ lastfm::XmlQuery lfm; >++ if( lfm.parse( m_jobs[ "getTopArtists" ]->readAll() ) ) >+ { >+- lastfm::XmlQuery lfm( m_jobs[ "getTopArtists" ]->readAll() ); >+- >+ foreach( const lastfm::XmlQuery &e, lfm[ "topartists" ].children ( "artist" ) ) >+ { >+ const QString name = e[ "name" ].text(); >+@@ -158,9 +158,10 @@ LastFmTreeModel::slotAddTopArtists () >+ m_myTopArtists->appendChild ( artist ); >+ } >+ >+- } catch( lastfm::ws::ParseError e ) >++ } >++ else >+ { >+- debug() << "Got exception in parsing from last.fm:" << e.what(); >++ debug() << "Got exception in parsing from last.fm:" << lfm.parseError().message(); >+ } >+ emitRowChanged(LastFm::TopArtists); >+ m_jobs[ "getTopArtists" ]->deleteLater(); >+diff --git a/src/services/lastfm/ScrobblerAdapter.h b/src/services/lastfm/ScrobblerAdapter.h >+index 67ed73b291cef61ee37b0ddae28ba1eadfd6304d..b276837c18b2181c1d7aba1674b878bfbf308e3b 100644 >+--- a/src/services/lastfm/ScrobblerAdapter.h >++++ b/src/services/lastfm/ScrobblerAdapter.h >+@@ -20,8 +20,8 @@ >+ >+ #include "core/meta/Meta.h" >+ >+-#include <lastfm/Audioscrobbler> >+-#include <lastfm/Track> >++#include <lastfm/Audioscrobbler.h> >++#include <lastfm/Track.h> >+ >+ #include <QVariant> >+ >+diff --git a/src/services/lastfm/biases/LastFmBias.cpp b/src/services/lastfm/biases/LastFmBias.cpp >+index b011b3299f98d851109d3d9ba52e6fd09855dcff..52307a4aa9ff48adf6c06b18b719717601494515 100644 >+--- a/src/services/lastfm/biases/LastFmBias.cpp >++++ b/src/services/lastfm/biases/LastFmBias.cpp >+@@ -34,9 +34,8 @@ >+ #include "core/collections/QueryMaker.h" >+ #include "core-impl/collections/support/CollectionManager.h" >+ >+-#include "lastfm/Artist" >+-#include "lastfm/ws.h" >+-#include "lastfm/XmlQuery" >++#include <lastfm/Artist.h> >++#include <lastfm/ws.h> >+ >+ #include <QLabel> >+ #include <QComboBox> >+diff --git a/src/services/lastfm/biases/WeeklyTopBias.cpp b/src/services/lastfm/biases/WeeklyTopBias.cpp >+index df6dd6681f05d95a0e281d6e82224de2bbf001e6..2deb9ccba66f7ec0df36225506acea2e4f30905b 100644 >+--- a/src/services/lastfm/biases/WeeklyTopBias.cpp >++++ b/src/services/lastfm/biases/WeeklyTopBias.cpp >+@@ -34,9 +34,9 @@ >+ #include "core/collections/QueryMaker.h" >+ #include "core-impl/collections/support/CollectionManager.h" >+ >+-#include "lastfm/Artist" >+-#include "lastfm/ws.h" >+-#include "lastfm/XmlQuery" >++#include <lastfm/Artist.h> >++#include <lastfm/ws.h> >++#include <lastfm/XmlQuery.h> >+ >+ #include <QNetworkReply> >+ >+@@ -371,10 +371,9 @@ Dynamic::WeeklyTopBias::weeklyArtistQueryFinished() >+ } >+ >+ >+- try >++ lastfm::XmlQuery lfm; >++ if( lfm.parse( reply->readAll() ) ) >+ { >+- lastfm::XmlQuery lfm( reply->readAll() ); >+- >+ // debug() << "got response:" << lfm; >+ QStringList artists; >+ for( int i = 0; i < lfm[ "weeklyartistchart" ].children( "artist" ).size(); i++ ) >+@@ -398,10 +397,10 @@ Dynamic::WeeklyTopBias::weeklyArtistQueryFinished() >+ warning() << "Got a reply for a week"<<week<<"that was not requested."; >+ return; >+ } >+- >+- } catch( lastfm::ws::ParseError& e ) >++ } >++ else >+ { >+- debug() << "caught exception parsing weekly artist chart."; >++ debug() << "failed to parse weekly artist chart."; >+ } >+ >+ reply->deleteLater(); >+diff --git a/src/services/lastfm/meta/LastFmMeta.h b/src/services/lastfm/meta/LastFmMeta.h >+index f7b93c14c92c0bebf99d165656a0e34f8b991cc0..7d64a3fa5c6f6cbe3f0cc5b26881a4996321938a 100644 >+--- a/src/services/lastfm/meta/LastFmMeta.h >++++ b/src/services/lastfm/meta/LastFmMeta.h >+@@ -24,7 +24,7 @@ >+ #include "ServiceMetaBase.h" // for the SourceInfoProvider >+ >+ >+-#include <lastfm/Track> >++#include <lastfm/Track.h> >+ >+ >+ #include <QObject> >+diff --git a/src/services/lastfm/meta/LastFmMeta.cpp b/src/services/lastfm/meta/LastFmMeta.cpp >+index d8f52845cb801d8ae940bc1bca77c7281ef18379..220d929977d28c8183db9965cecfc1a80039fe08 100644 >+--- a/src/services/lastfm/meta/LastFmMeta.cpp >++++ b/src/services/lastfm/meta/LastFmMeta.cpp >+@@ -41,7 +41,7 @@ >+ #include <QWeakPointer> >+ #include <QUrl> >+ >+-#include <lastfm/Track> >++#include <lastfm/Track.h> >+ >+ namespace LastFm { >+ >+@@ -451,8 +451,7 @@ Track::love() >+ DEBUG_BLOCK >+ >+ debug() << "info:" << d->lastFmTrack.artist() << d->lastFmTrack.title(); >+- d->wsReply = lastfm::MutableTrack( d->lastFmTrack ).love(); >+- connect( d->wsReply, SIGNAL( finished() ), this, SLOT( slotWsReply() ) ); >++ lastfm::MutableTrack( d->lastFmTrack ).love(); >+ } >+ >+ void >+@@ -477,9 +476,9 @@ void Track::slotResultReady() >+ { >+ if( d->trackFetch->error() == QNetworkReply::NoError ) >+ { >+- try >++ lastfm::XmlQuery lfm; >++ if( lfm.parse( d->trackFetch->readAll() ) ) >+ { >+- lastfm::XmlQuery lfm( d->trackFetch->readAll() ); >+ QString id = lfm[ "track" ][ "id" ].text(); >+ QString streamable = lfm[ "track" ][ "streamable" ].text(); >+ if( streamable.toInt() == 1 ) >+@@ -487,9 +486,10 @@ void Track::slotResultReady() >+ else >+ init(); >+ >+- } catch( lastfm::ws::ParseError& e ) >++ } >++ else >+ { >+- debug() << "Got exception in parsing from last.fm:" << e.what(); >++ debug() << "Got exception in parsing from last.fm:" << lfm.parseError().message(); >+ } >+ } else >+ { >+diff --git a/src/services/lastfm/meta/LastFmMeta_p.h b/src/services/lastfm/meta/LastFmMeta_p.h >+index c2d88ac79a4dd0fe59b9f889baf72c879833f0d3..caf954a1e1acbf220ce8efa9d16db2a71cf4bbb3 100644 >+--- a/src/services/lastfm/meta/LastFmMeta_p.h >++++ b/src/services/lastfm/meta/LastFmMeta_p.h >+@@ -26,10 +26,10 @@ >+ #include "core/statistics/StatisticsProvider.h" >+ #include "core-impl/statistics/providers/tag/TagStatisticsProvider.h" >+ >+-#include <lastfm/Track> >++#include <lastfm/Track.h> >+ #include <lastfm/ws.h> >+-#include <lastfm/RadioTuner> >+-#include <lastfm/XmlQuery> >++#include <lastfm/RadioTuner.h> >++#include <lastfm/XmlQuery.h> >+ >+ #include <kio/job.h> >+ #include <kio/jobclasses.h> >+@@ -144,26 +144,24 @@ class Track::Private : public QObject >+ return; >+ if( m_userFetch->error() == QNetworkReply::NoError ) >+ { >+- try >++ lastfm::XmlQuery lfm; >++ if( !lfm.parse( m_userFetch->readAll() ) ) >+ { >+- lastfm::XmlQuery lfm( m_userFetch->readAll() ); >+- albumUrl = lfm[ "track" ][ "album" ][ "url" ].text(); >+- trackUrl = lfm[ "track" ][ "url" ].text(); >+- artistUrl = lfm[ "track" ][ "artist" ][ "url" ].text(); >+- >+- notifyObservers(); >++ debug() << "Got exception in parsing from last.fm:" << lfm.parseError().message(); >++ return; >++ } >++ albumUrl = lfm[ "track" ][ "album" ][ "url" ].text(); >++ trackUrl = lfm[ "track" ][ "url" ].text(); >++ artistUrl = lfm[ "track" ][ "artist" ][ "url" ].text(); >+ >+- imageUrl = lfm[ "track" ][ "album" ][ "image size=large" ].text(); >++ notifyObservers(); >+ >+- if( !imageUrl.isEmpty() ) >+- { >+- KIO::Job* job = KIO::storedGet( KUrl( imageUrl ), KIO::Reload, KIO::HideProgressInfo ); >+- connect( job, SIGNAL( result( KJob* ) ), this, SLOT( fetchImageFinished( KJob* ) ) ); >+- } >++ imageUrl = lfm[ "track" ][ "album" ][ "image size=large" ].text(); >+ >+- } catch( lastfm::ws::ParseError& e ) >++ if( !imageUrl.isEmpty() ) >+ { >+- debug() << "Got exception in parsing from last.fm:" << e.what(); >++ KIO::Job* job = KIO::storedGet( KUrl( imageUrl ), KIO::Reload, KIO::HideProgressInfo ); >++ connect( job, SIGNAL( result( KJob* ) ), this, SLOT( fetchImageFinished( KJob* ) ) ); >+ } >+ } >+ >+diff --git a/src/services/lastfm/meta/MultiPlayableCapabilityImpl_p.h b/src/services/lastfm/meta/MultiPlayableCapabilityImpl_p.h >+index 1c464cc2635c7d614eab48ca5e4e156c67870f04..e9b63271c77d3420cd8eeb5eb19d1152b23c319f 100644 >+--- a/src/services/lastfm/meta/MultiPlayableCapabilityImpl_p.h >++++ b/src/services/lastfm/meta/MultiPlayableCapabilityImpl_p.h >+@@ -25,8 +25,9 @@ >+ #include "core/meta/Meta.h" >+ #include "core/capabilities/MultiPlayableCapability.h" >+ >+-#include <lastfm/Track> >+-#include <lastfm/RadioTuner> >++#include <lastfm/Track.h> >++#include <lastfm/RadioStation.h> >++#include <lastfm/RadioTuner.h> >+ #include <lastfm/ws.h> >+ >+ #include <KLocale> >+@@ -55,24 +56,23 @@ class MultiPlayableCapabilityImpl : public Capabilities::MultiPlayableCapability >+ { >+ DEBUG_BLOCK >+ m_tuner = new lastfm::RadioTuner( lastfm::RadioStation( m_track->uidUrl() ) ); >+- >++ >+ connect( m_tuner, SIGNAL( trackAvailable() ), this, SLOT( slotNewTrackAvailable() ) ); >+- connect( m_tuner, SIGNAL( error( lastfm::ws::Error ) ), this, SLOT( error( lastfm::ws::Error ) ) ); >++ connect( m_tuner, SIGNAL( error(lastfm::ws::Error,QString) ), this, SLOT( error( lastfm::ws::Error ) ) ); >+ } >+- >++ >+ virtual void fetchNext() >+ { >+ DEBUG_BLOCK >+ m_currentTrack = m_tuner->takeNextTrack(); >+ m_track->setTrackInfo( m_currentTrack ); >+- >+ } >+- >++ >+ using Observer::metadataChanged; >+ virtual void metadataChanged( Meta::TrackPtr track ) >+ { >+ const LastFm::TrackPtr ltrack = LastFm::TrackPtr::dynamicCast( track ); >+- >++ >+ if( ltrack.isNull() ) >+ return; >+ >+@@ -94,7 +94,7 @@ class MultiPlayableCapabilityImpl : public Capabilities::MultiPlayableCapability >+ m_track->setTrackInfo( m_currentTrack ); >+ } >+ } >+- >++ >+ virtual void skip() >+ { >+ fetchNext(); >+diff --git a/src/context/engines/upcomingevents/UpcomingEventsEngine.cpp b/src/context/engines/upcomingevents/UpcomingEventsEngine.cpp >+index 4ae73d892cef3d4a41662f7ed15849ae773c16e3..689323cc753a3c693bc09870ea1a77e2574ec9a7 100644 >+--- a/src/context/engines/upcomingevents/UpcomingEventsEngine.cpp >++++ b/src/context/engines/upcomingevents/UpcomingEventsEngine.cpp >+@@ -27,10 +27,6 @@ >+ #include "EngineController.h" >+ #include "LastFmEventXmlParser.h" >+ >+-// LastFm >+-#include <lastfm/XmlQuery> >+-#include <lastfm/ws.h> >+- >+ // KDE >+ #include <KDateTime> >+ >+diff --git a/src/core/support/Amarok.h b/src/core/support/Amarok.h >+index c9852154dee74fb372bae435fdeefa92003d41b1..d8c91e789d02b204202c8a99b9459b8d10b3d90d 100644 >+--- a/src/core/support/Amarok.h >++++ b/src/core/support/Amarok.h >+@@ -203,6 +203,7 @@ namespace Amarok >+ >+ inline const char* discogsApiKey() { return "91734dd989"; } >+ inline const char* lastfmApiKey() { return "402d3ca8e9bc9d3cf9b85e1202944ca5"; } >++ inline const char* lastfmApiSharedSecret() { return "fe0dcde9fcd14c2d1d50665b646335e9"; } >+ inline const char* yahooBossApiKey() { return "oQepTNrV34G9Satb1dgRZ8hdl1uhJvguDSU5Knl2Xd4ALK85knYt6ylr.FTA57XMRBA-"; } >+ inline const char* flickrApiKey() { return "9c5a288116c34c17ecee37877397fe31"; } >+ } >+diff --git a/CMakeLists.txt b/CMakeLists.txt >+index 0d146c58bd382b4d4f379ebedddf1630d73db369..31183e59b69cdb3c7902d49bdb93a00a7fb35053 100644 >+--- a/CMakeLists.txt >++++ b/CMakeLists.txt >+@@ -129,7 +129,7 @@ if( WITH_PLAYER ) >+ # macro_log_feature( STRIGI_FOUND "strigi" "Index metadata of files" "http://strigi.sourceforge.net" FALSE "" "" ) >+ >+ macro_optional_find_package(LibLastFm) >+- macro_log_feature( LIBLASTFM_FOUND "liblastfm" "Enable Last.Fm service, including scrobbling, song submissions, and suggested song dynamic playlists" "http://cdn.last.fm/src/liblastfm-0.3.0.tar.bz2" FALSE "0.3" "" ) >++ macro_log_feature( LIBLASTFM_FOUND "liblastfm" "Enable Last.Fm service, including scrobbling, song submissions, and suggested song dynamic playlists" "http://cdn.last.fm/src/liblastfm-1.0.0.tar.gz" FALSE "1.0.0" "" ) >+ macro_bool_to_01( LIBLASTFM_FOUND HAVE_LIBLASTFM ) >+ >+ macro_optional_find_package( FFmpeg ) >+diff --git a/cmake/modules/FindLibLastFm.cmake b/cmake/modules/FindLibLastFm.cmake >+index 1d863b08489e27054a049e35d2d94667646db1f7..95dddb6c082c14c7a6b14eb4501e1283106c8fcf 100644 >+--- a/cmake/modules/FindLibLastFm.cmake >++++ b/cmake/modules/FindLibLastFm.cmake >+@@ -6,7 +6,7 @@ >+ # LIBLASTFM_FOUND, whether liblastfm was found >+ >+ >+-find_path(LIBLASTFM_INCLUDE_DIR NAMES Audioscrobbler >++find_path(LIBLASTFM_INCLUDE_DIR NAMES lastfm >+ HINTS >+ ~/usr/include >+ /opt/local/include >+diff --git a/src/LastfmReadLabelCapability.cpp b/src/LastfmReadLabelCapability.cpp >+index 385e6b9c065009b330e116e3d748b82c24f14e8d..d1fb28b6abf2dcf0cf5aaee71dedf1c5328cb59e 100644 >+--- a/src/LastfmReadLabelCapability.cpp >++++ b/src/LastfmReadLabelCapability.cpp >+@@ -22,8 +22,7 @@ >+ #include <QMap> >+ #include <QNetworkReply> >+ >+-#include <lastfm/XmlQuery> >+-#include <ws.h> >++#include <lastfm/XmlQuery.h> >+ #include "core/support/Amarok.h" >+ >+ namespace Capabilities >+@@ -72,7 +71,8 @@ LastfmReadLabelCapability::onTagsFetched() >+ { >+ case QNetworkReply::NoError: >+ { >+- lastfm::XmlQuery lfm = m_job->readAll(); >++ lastfm::XmlQuery lfm; >++ lfm.parse(m_job->readAll()); >+ QList<lastfm::XmlQuery> tags = lfm.children( "tag" ); >+ QStringList ret; >+ foreach( const lastfm::XmlQuery &child, tags ) >-- >1.7.8.6 >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 419509
:
316471