1
0
mirror of https://github.com/tomahawk-player/tomahawk.git synced 2025-03-19 07:19:42 +01: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( requestData.requestId ) // requestId
.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 );
}
@ -75,8 +75,8 @@ JSInfoPlugin::pushInfo( Tomahawk::InfoSystem::InfoPushData pushData )
QString eval = QString( "pushInfo({ type: %1, pushFlags: %2, input: %3, additionalInput: %4})" )
.arg( pushData.type )
.arg( pushData.pushFlags )
.arg( JSResolver::escape( serializeQVariantMap ( pushData.infoPair.second.toMap() ) ) )
.arg( JSResolver::escape( serializeQVariantMap( pushData.infoPair.first ) ) );
.arg( serializeQVariantMap ( pushData.infoPair.second.toMap() ) )
.arg( serializeQVariantMap( pushData.infoPair.first ) );
callMethodOnInfoPlugin( eval );
}
@ -95,7 +95,7 @@ JSInfoPlugin::notInCacheSlot( Tomahawk::InfoSystem::InfoStringHash criteria, Tom
.arg( d->id )
.arg( requestData.requestId )
.arg( requestData.type )
.arg( JSResolver::escape( serializeQVariantMap( convertInfoStringHashToQVariantMap( criteria ) ) ) );
.arg( serializeQVariantMap( convertInfoStringHashToQVariantMap( criteria ) ) );
callMethodOnInfoPlugin( eval );
}
@ -239,7 +239,7 @@ JSInfoPlugin::serializeQVariantMap( const QVariantMap& map )
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 ) ) );
}