summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Hartmann <thomas.hartmann@qt.io>2023-05-10 15:25:48 +0200
committerTim Jenssen <tim.jenssen@qt.io>2023-05-10 14:14:33 +0000
commit53cb1b4083666df18ea79366f6fb0ff603ed54d8 (patch)
tree0c3c7ff7b50621b00b714d50944b23ff3d2704c2
parentb2f3a7d7f93dae04923a906a3a44074b205798f5 (diff)
downloadqt-creator-53cb1b4083666df18ea79366f6fb0ff603ed54d8.tar.gz
QmlDesigner: Add setting to force download mirror
Add setting QML/Designer/ForceDownloadMirror to set a specific mirror for downloads. Remove private QQmlData usage. This was for debugging and the issue was fixed. Task-number: QDS-9687 Change-Id: Icf9a2e2db7d60b13f37d7f51b857cbe7c0a1c3b4 Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
-rw-r--r--src/plugins/qmldesigner/utils/filedownloader.cpp16
1 files changed, 11 insertions, 5 deletions
diff --git a/src/plugins/qmldesigner/utils/filedownloader.cpp b/src/plugins/qmldesigner/utils/filedownloader.cpp
index 7825be5081..5f0aabe309 100644
--- a/src/plugins/qmldesigner/utils/filedownloader.cpp
+++ b/src/plugins/qmldesigner/utils/filedownloader.cpp
@@ -2,7 +2,8 @@
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0
#include "filedownloader.h"
-#include <private/qqmldata_p.h>
+#include <coreplugin/icore.h>
+
#include <utils/networkaccessmanager.h>
#include <utils/filepath.h>
@@ -154,6 +155,15 @@ void FileDownloader::setUrl(const QUrl &url)
{
if (m_url != url) {
m_url = url;
+
+ const QString mirror = Core::ICore::settings()->value("QML/Designer/ForceDownloadMirror").toString();
+ if (!mirror.isEmpty()) {
+ qWarning() << Q_FUNC_INFO << "Alternative mirror is used:" << mirror;
+ QString replaced = url.toString();
+ replaced.replace("https://download.qt.io/", mirror);
+ m_url = QUrl::fromUserInput(replaced);
+ }
+
emit urlChanged();
}
@@ -262,10 +272,6 @@ void FileDownloader::doProbeUrl()
this,
[this](QNetworkReply::NetworkError code) {
- if (QQmlData::wasDeleted(this)) {
- qDebug() << Q_FUNC_INFO << "FileDownloader was deleted.";
- return;
- }
qDebug() << Q_FUNC_INFO << "Network error:" << code
<< qobject_cast<QNetworkReply *>(sender())->errorString();