1
0
mirror of https://github.com/tomahawk-player/tomahawk.git synced 2025-08-13 01:24:11 +02:00

Fix serialization of QVariantMap to javascript

This commit is contained in:
Dominik Schmidt
2014-11-20 21:24:41 +01:00
parent d2e6deba9e
commit fcc772ecc5

View File

@@ -61,7 +61,7 @@ JSInfoPlugin::getInfo( Tomahawk::InfoSystem::InfoRequestData requestData )
.arg( d->id ) // infoPluginId .arg( d->id ) // infoPluginId
.arg( requestData.requestId ) // requestId .arg( requestData.requestId ) // requestId
.arg( requestData.type ) // type .arg( requestData.type ) // type
.arg( JSResolver::escape( serializeQVariantMap( convertInfoStringHashToQVariantMap( requestData.input.value<Tomahawk::InfoSystem::InfoStringHash>() ) ) ) ); // infoHash .arg( serializeQVariantMap( convertInfoStringHashToQVariantMap( requestData.input.value<Tomahawk::InfoSystem::InfoStringHash>() ) ) ); // infoHash
callMethodOnInfoPlugin( eval ); callMethodOnInfoPlugin( eval );
} }
@@ -75,8 +75,8 @@ JSInfoPlugin::pushInfo( Tomahawk::InfoSystem::InfoPushData pushData )
QString eval = QString( "pushInfo({ type: %1, pushFlags: %2, input: %3, additionalInput: %4})" ) QString eval = QString( "pushInfo({ type: %1, pushFlags: %2, input: %3, additionalInput: %4})" )
.arg( pushData.type ) .arg( pushData.type )
.arg( pushData.pushFlags ) .arg( pushData.pushFlags )
.arg( JSResolver::escape( serializeQVariantMap ( pushData.infoPair.second.toMap() ) ) ) .arg( serializeQVariantMap ( pushData.infoPair.second.toMap() ) )
.arg( JSResolver::escape( serializeQVariantMap( pushData.infoPair.first ) ) ); .arg( serializeQVariantMap( pushData.infoPair.first ) );
callMethodOnInfoPlugin( eval ); callMethodOnInfoPlugin( eval );
} }
@@ -95,7 +95,7 @@ JSInfoPlugin::notInCacheSlot( Tomahawk::InfoSystem::InfoStringHash criteria, Tom
.arg( d->id ) .arg( d->id )
.arg( requestData.requestId ) .arg( requestData.requestId )
.arg( requestData.type ) .arg( requestData.type )
.arg( JSResolver::escape( serializeQVariantMap( convertInfoStringHashToQVariantMap( criteria ) ) ) ); .arg( serializeQVariantMap( convertInfoStringHashToQVariantMap( criteria ) ) );
callMethodOnInfoPlugin( eval ); callMethodOnInfoPlugin( eval );
} }
@@ -239,7 +239,7 @@ JSInfoPlugin::serializeQVariantMap( const QVariantMap& map )
QByteArray serialized = TomahawkUtils::toJson( localMap ); QByteArray serialized = TomahawkUtils::toJson( localMap );
return QString( "JSON.parse('%1')" ).arg( QString::fromUtf8( serialized ) ); return QString( "JSON.parse('%1')" ).arg( JSResolver::escape( QString::fromUtf8( serialized ) ) );
} }