Disable automatic conversions from 8-bit strings

This commit is contained in:
Jonas Kvinge
2024-04-11 02:56:01 +02:00
parent 58944993b8
commit 0c6872b352
310 changed files with 2501 additions and 2332 deletions

View File

@@ -47,13 +47,15 @@
#include "qobuzbaserequest.h"
#include "qobuzrequest.h"
constexpr int QobuzRequest::kMaxConcurrentArtistsRequests = 3;
constexpr int QobuzRequest::kMaxConcurrentAlbumsRequests = 3;
constexpr int QobuzRequest::kMaxConcurrentSongsRequests = 3;
constexpr int QobuzRequest::kMaxConcurrentArtistAlbumsRequests = 3;
constexpr int QobuzRequest::kMaxConcurrentAlbumSongsRequests = 3;
constexpr int QobuzRequest::kMaxConcurrentAlbumCoverRequests = 1;
constexpr int QobuzRequest::kFlushRequestsDelay = 200;
namespace {
constexpr int kMaxConcurrentArtistsRequests = 3;
constexpr int kMaxConcurrentAlbumsRequests = 3;
constexpr int kMaxConcurrentSongsRequests = 3;
constexpr int kMaxConcurrentArtistAlbumsRequests = 3;
constexpr int kMaxConcurrentAlbumSongsRequests = 3;
constexpr int kMaxConcurrentAlbumCoverRequests = 1;
constexpr int kFlushRequestsDelay = 200;
} // namespace
QobuzRequest::QobuzRequest(QobuzService *service, QobuzUrlHandler *url_handler, Application *app, SharedPtr<NetworkAccessManager> network, const QueryType query_type, QObject *parent)
: QobuzBaseRequest(service, network, parent),
@@ -225,12 +227,12 @@ void QobuzRequest::FlushArtistsRequests() {
ParamList params;
if (query_type_ == QueryType::Artists) {
params << Param("type", "artists");
params << Param("user_auth_token", user_auth_token());
params << Param(QStringLiteral("type"), QStringLiteral("artists"));
params << Param(QStringLiteral("user_auth_token"), user_auth_token());
}
else if (query_type_ == QueryType::SearchArtists) params << Param("query", search_text_);
if (request.limit > 0) params << Param("limit", QString::number(request.limit));
if (request.offset > 0) params << Param("offset", QString::number(request.offset));
else if (query_type_ == QueryType::SearchArtists) params << Param(QStringLiteral("query"), search_text_);
if (request.limit > 0) params << Param(QStringLiteral("limit"), QString::number(request.limit));
if (request.offset > 0) params << Param(QStringLiteral("offset"), QString::number(request.offset));
QNetworkReply *reply = nullptr;
if (query_type_ == QueryType::Artists) {
reply = CreateRequest(QStringLiteral("favorite/getUserFavorites"), params);
@@ -277,12 +279,12 @@ void QobuzRequest::FlushAlbumsRequests() {
ParamList params;
if (query_type_ == QueryType::Albums) {
params << Param("type", "albums");
params << Param("user_auth_token", user_auth_token());
params << Param(QStringLiteral("type"), QStringLiteral("albums"));
params << Param(QStringLiteral("user_auth_token"), user_auth_token());
}
else if (query_type_ == QueryType::SearchAlbums) params << Param("query", search_text_);
if (request.limit > 0) params << Param("limit", QString::number(request.limit));
if (request.offset > 0) params << Param("offset", QString::number(request.offset));
else if (query_type_ == QueryType::SearchAlbums) params << Param(QStringLiteral("query"), search_text_);
if (request.limit > 0) params << Param(QStringLiteral("limit"), QString::number(request.limit));
if (request.offset > 0) params << Param(QStringLiteral("offset"), QString::number(request.offset));
QNetworkReply *reply = nullptr;
if (query_type_ == QueryType::Albums) {
reply = CreateRequest(QStringLiteral("favorite/getUserFavorites"), params);
@@ -329,12 +331,12 @@ void QobuzRequest::FlushSongsRequests() {
ParamList params;
if (query_type_ == QueryType::Songs) {
params << Param("type", "tracks");
params << Param("user_auth_token", user_auth_token());
params << Param(QStringLiteral("type"), QStringLiteral("tracks"));
params << Param(QStringLiteral("user_auth_token"), user_auth_token());
}
else if (query_type_ == QueryType::SearchSongs) params << Param("query", search_text_);
if (request.limit > 0) params << Param("limit", QString::number(request.limit));
if (request.offset > 0) params << Param("offset", QString::number(request.offset));
else if (query_type_ == QueryType::SearchSongs) params << Param(QStringLiteral("query"), search_text_);
if (request.limit > 0) params << Param(QStringLiteral("limit"), QString::number(request.limit));
if (request.offset > 0) params << Param(QStringLiteral("offset"), QString::number(request.offset));
QNetworkReply *reply = nullptr;
if (query_type_ == QueryType::Songs) {
reply = CreateRequest(QStringLiteral("favorite/getUserFavorites"), params);
@@ -585,10 +587,10 @@ void QobuzRequest::FlushArtistAlbumsRequests() {
const ArtistAlbumsRequest request = artist_albums_requests_queue_.dequeue();
ParamList params = ParamList() << Param("artist_id", request.artist.artist_id)
<< Param("extra", "albums");
ParamList params = ParamList() << Param(QStringLiteral("artist_id"), request.artist.artist_id)
<< Param(QStringLiteral("extra"), QStringLiteral("albums"));
if (request.offset > 0) params << Param("offset", QString::number(request.offset));
if (request.offset > 0) params << Param(QStringLiteral("offset"), QString::number(request.offset));
QNetworkReply *reply = CreateRequest(QStringLiteral("artist/get"), params);
QObject::connect(reply, &QNetworkReply::finished, this, [this, reply, request]() { ArtistAlbumsReplyReceived(reply, request.artist, request.offset); });
replies_ << reply;
@@ -842,8 +844,8 @@ void QobuzRequest::FlushAlbumSongsRequests() {
while (!album_songs_requests_queue_.isEmpty() && album_songs_requests_active_ < kMaxConcurrentAlbumSongsRequests) {
AlbumSongsRequest request = album_songs_requests_queue_.dequeue();
ParamList params = ParamList() << Param("album_id", request.album.album_id);
if (request.offset > 0) params << Param("offset", QString::number(request.offset));
ParamList params = ParamList() << Param(QStringLiteral("album_id"), request.album.album_id);
if (request.offset > 0) params << Param(QStringLiteral("offset"), QString::number(request.offset));
QNetworkReply *reply = CreateRequest(QStringLiteral("album/get"), params);
replies_ << reply;
QObject::connect(reply, &QNetworkReply::finished, this, [this, reply, request]() { AlbumSongsReplyReceived(reply, request.artist, request.album, request.offset); });
@@ -1341,8 +1343,8 @@ void QobuzRequest::AlbumCoverReceived(QNetworkReply *reply, const QUrl &cover_ur
}
QString mimetype = reply->header(QNetworkRequest::ContentTypeHeader).toString();
if (mimetype.contains(';')) {
mimetype = mimetype.left(mimetype.indexOf(';'));
if (mimetype.contains(QLatin1Char(';'))) {
mimetype = mimetype.left(mimetype.indexOf(QLatin1Char(';')));
}
if (!ImageUtils::SupportedImageMimeTypes().contains(mimetype, Qt::CaseInsensitive) && !ImageUtils::SupportedImageFormats().contains(mimetype, Qt::CaseInsensitive)) {
Error(QStringLiteral("Unsupported mimetype for image reader %1 for %2").arg(mimetype, cover_url.toString()));
@@ -1351,7 +1353,7 @@ void QobuzRequest::AlbumCoverReceived(QNetworkReply *reply, const QUrl &cover_ur
return;
}
QByteArray data = reply->readAll();
const QByteArray data = reply->readAll();
if (data.isEmpty()) {
Error(QStringLiteral("Received empty image data for %1").arg(cover_url.toString()));
if (album_covers_requests_sent_.contains(cover_url)) album_covers_requests_sent_.remove(cover_url);