From 2e76ae5b1324fb84b86ff959c38bf4614844bc00 Mon Sep 17 00:00:00 2001 From: Martin Rotter Date: Tue, 24 Jan 2023 08:04:40 +0100 Subject: [PATCH] ttrss: fix downloading icons, now uses more proper relative URL detection --- src/librssguard/miscellaneous/application.cpp | 1 - src/librssguard/services/tt-rss/ttrssnetworkfactory.cpp | 7 +++---- 2 files changed, 3 insertions(+), 5 deletions(-) diff --git a/src/librssguard/miscellaneous/application.cpp b/src/librssguard/miscellaneous/application.cpp index 994bb6500..aad00dabb 100644 --- a/src/librssguard/miscellaneous/application.cpp +++ b/src/librssguard/miscellaneous/application.cpp @@ -471,7 +471,6 @@ QString Application::userDataAppFolder() const { // In "app" folder, we would like to separate all user data into own subfolder, // therefore stick to "data" folder in this mode. return QDir::toNativeSeparators(applicationDirPath() + QDir::separator() + QSL("data4")); - ; } QString Application::userDataFolder() { diff --git a/src/librssguard/services/tt-rss/ttrssnetworkfactory.cpp b/src/librssguard/services/tt-rss/ttrssnetworkfactory.cpp index 9addb0732..1a1853c70 100644 --- a/src/librssguard/services/tt-rss/ttrssnetworkfactory.cpp +++ b/src/librssguard/services/tt-rss/ttrssnetworkfactory.cpp @@ -926,11 +926,10 @@ RootItem* TtRssGetFeedsCategoriesResponse::feedsCategories(TtRssNetworkFactory* if (obtain_icons) { QString icon_path = - item[QSL("icon")].type() == QJsonValue::String ? item[QSL("icon")].toString() : QString(); + item[QSL("icon")].type() == QJsonValue::Type::String ? item[QSL("icon")].toString() : QString(); if (!icon_path.isEmpty()) { - // Chop the "api/" suffix out and append - QString full_icon_address = base_address + QL1C('/') + icon_path; + QString full_icon_address = QUrl(base_address).resolved(icon_path).toString(); QPixmap icon; QList> headers; @@ -941,7 +940,7 @@ RootItem* TtRssGetFeedsCategoriesResponse::feedsCategories(TtRssNetworkFactory* auto res = NetworkFactory::downloadIcon({{full_icon_address, true}}, DOWNLOAD_TIMEOUT, icon, headers, proxy); - if (res == QNetworkReply::NoError) { + if (res == QNetworkReply::NetworkError::NoError) { feed->setIcon(icon); } else {