From 6be09642589583737ebb4195c78d7733bdc2eefa Mon Sep 17 00:00:00 2001 From: Martin Brodbeck Date: Wed, 11 Dec 2013 11:04:54 +0100 Subject: [PATCH 1/2] Make sure that we feed set_url() with a QUrl from an UTF-8 encoded string. --- src/core/song.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/core/song.cpp b/src/core/song.cpp index fa3382437..3141f4abf 100644 --- a/src/core/song.cpp +++ b/src/core/song.cpp @@ -508,7 +508,7 @@ void Song::InitFromQuery(const SqlRow& q, bool reliable_metadata, int col) { d->samplerate_ = toint(col + 14); d->directory_id_ = toint(col + 15); - set_url(QUrl::fromEncoded(tobytearray(col + 16))); + set_url(QUrl::fromEncoded(tostr(col + 16).toUtf8())); d->basefilename_ = QFileInfo(d->url_.toLocalFile()).fileName(); d->mtime_ = toint(col + 17); d->ctime_ = toint(col + 18); From 774027a927f948efab0a953d07f42ecf9d01e3d7 Mon Sep 17 00:00:00 2001 From: Martin Brodbeck Date: Thu, 12 Dec 2013 15:37:59 +0100 Subject: [PATCH 2/2] Removed tobytearray macro because it coerces to ASCII. --- src/core/song.cpp | 1 - 1 file changed, 1 deletion(-) diff --git a/src/core/song.cpp b/src/core/song.cpp index 3141f4abf..34b1676d8 100644 --- a/src/core/song.cpp +++ b/src/core/song.cpp @@ -485,7 +485,6 @@ void Song::InitFromQuery(const SqlRow& q, bool reliable_metadata, int col) { d->init_from_file_ = reliable_metadata; #define tostr(n) (q.value(n).isNull() ? QString::null : q.value(n).toString()) - #define tobytearray(n)(q.value(n).isNull() ? QByteArray() : q.value(n).toByteArray()) #define toint(n) (q.value(n).isNull() ? -1 : q.value(n).toInt()) #define tolonglong(n) (q.value(n).isNull() ? -1 : q.value(n).toLongLong()) #define tofloat(n) (q.value(n).isNull() ? -1 : q.value(n).toDouble())