** Changed in: unity8 (Ubuntu)
Importance: Undecided => Medium
** Changed in: unity8 (Ubuntu)
Assignee: (unassigned) => Michael Zanetti (mzanetti)
** No longer affects: unity8
--
You received this bug notification because you are a member of Ubuntu
Touch seeded packages, which is subscribed to unity-scopes-shell in
Ubuntu.
https://bugs.launchpad.net/bugs/1237829
Title:
QQuickImageProvider's uri escaping can break image://albumart uris
Status in unity-scopes-shell package in Ubuntu:
Fix Released
Status in unity8 package in Ubuntu:
Fix Released
Bug description:
While implementing https://code.launchpad.net/~unity-team/unity8
/albumart-provider/+merge/189923 we observed an undesired behavior of
QML/QQuickImageProvider which can break albumart uris that contain '/'
as part of the string (e.g. "AC/DC" for the artist).
The code we implemented in iconutils.cpp uses
QUrl::toPercentEncoding() to encode album and artist separately and
then return "image://albumart/<encodedartist>/<encodedalbum>" uri to
the shell (e.g "image://albumart/AC%2FDC/FooAlbum"). However, when
AlbumArtProvider receives it in requestImage(..), it's all decoded
("AC/DC/FooAlbum"), even though a quick investigation showed that the
string passed to requestImage by Qt is result of
url.toString(QUrl::RemoveScheme | QUrl::RemoveAuthority).mid(1), which
doesn't touch the content. So, it seems like Qt decodes it already
somewhere else. We should determine if this is a bug in Qt (and we can
fix it?), or if we need a different approach / workaround for passing
artist/album (such as using an uncommon character to separate album
and artist, and not rely on encoding).
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/unity-scopes-shell/+bug/1237829/+subscriptions
--
Mailing list: https://launchpad.net/~touch-packages
Post to : [email protected]
Unsubscribe : https://launchpad.net/~touch-packages
More help : https://help.launchpad.net/ListHelp