From 6a4313b7a8d06a3a6951be9203dbc26be9f0405b Mon Sep 17 00:00:00 2001 From: Thomas Hartmann Date: Wed, 10 May 2023 15:25:48 +0200 Subject: [PATCH] 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 --- src/plugins/qmldesigner/utils/filedownloader.cpp | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/src/plugins/qmldesigner/utils/filedownloader.cpp b/src/plugins/qmldesigner/utils/filedownloader.cpp index 7825be5081b..5f0aabe3091 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 +#include + #include #include @@ -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(sender())->errorString();