diff --git a/src/lib/io/kurlmimedata.cpp b/src/lib/io/kurlmimedata.cpp --- a/src/lib/io/kurlmimedata.cpp +++ b/src/lib/io/kurlmimedata.cpp @@ -66,13 +66,13 @@ MetaDataMap *metaData) { QList uris; - const char *firstMimeType = s_kdeUriListMime; - const char *secondMimeType = "text/uri-list"; + QString firstMimeType = QString::fromLatin1(s_kdeUriListMime); + QString secondMimeType = QStringLiteral("text/uri-list"); if (decodeOptions == PreferLocalUrls) { - qSwap(firstMimeType, secondMimeType); + std::swap(firstMimeType, secondMimeType); } - QByteArray ba = mimeData->data(QString::fromLatin1(firstMimeType)); - if (ba.isEmpty()) { + QByteArray ba = mimeData->data(firstMimeType); + if (ba.isEmpty() || firstMimeType == QStringLiteral("text/uri-list")) { // Extracting uris from text/uri-list, use the much faster QMimeData method urls() if (mimeData->hasUrls()) { uris = mimeData->urls();