From 3e3cf6dca96180a4f86c0780baad93fb29c2c994 Mon Sep 17 00:00:00 2001 From: Ali Kianian Date: Thu, 27 Jun 2024 09:05:26 +0300 Subject: [PATCH] AssetDownloader Add a virtual method for resolving urls MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Pick-to: 6.8 Change-Id: Ie771fd955e6b44ff4825243791029c4fcea0d493 Reviewed-by: Kai Köhne Reviewed-by: Jarek Kobus --- src/assets/downloader/assetdownloader.cpp | 9 +++++++-- src/assets/downloader/assetdownloader.h | 3 +++ 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/src/assets/downloader/assetdownloader.cpp b/src/assets/downloader/assetdownloader.cpp index 38564353d3c..fb82dc29adb 100644 --- a/src/assets/downloader/assetdownloader.cpp +++ b/src/assets/downloader/assetdownloader.cpp @@ -385,7 +385,7 @@ void AssetDownloader::start() } storage->tempDir = d->m_temporaryDir->path(); d->setLocalDownloadDir(baseLocalDir(d->m_preferredLocalDownloadDir)); - precheckLocalFile(d->m_offlineAssetsFilePath); + precheckLocalFile(resolvedUrl(d->m_offlineAssetsFilePath)); return SetupResult::Continue; }; @@ -405,7 +405,7 @@ void AssetDownloader::start() return DoneResult::Error; } - QFile file(pathFromUrl(d->m_offlineAssetsFilePath)); + QFile file(pathFromUrl(resolvedUrl(d->m_offlineAssetsFilePath))); if (!file.open(QIODevice::ReadOnly)) { qWarning() << "Also failed to open" << d->m_offlineAssetsFilePath; return DoneResult::Error; @@ -560,6 +560,11 @@ void AssetDownloader::start() [this](DoneWith result) { emit finished(result == DoneWith::Success); }); } +QUrl AssetDownloader::resolvedUrl(const QUrl &url) const +{ + return url; +} + } // namespace Assets::Downloader QT_END_NAMESPACE diff --git a/src/assets/downloader/assetdownloader.h b/src/assets/downloader/assetdownloader.h index e000122b41c..8dfb853699e 100644 --- a/src/assets/downloader/assetdownloader.h +++ b/src/assets/downloader/assetdownloader.h @@ -89,6 +89,9 @@ public: public Q_SLOTS: void start(); +protected: + virtual QUrl resolvedUrl(const QUrl &url) const; + Q_SIGNALS: void started(); void finished(bool success);