diff --git a/assignment-client/src/Agent.cpp b/assignment-client/src/Agent.cpp index 1805a414b5..fcd983873d 100644 --- a/assignment-client/src/Agent.cpp +++ b/assignment-client/src/Agent.cpp @@ -208,12 +208,14 @@ void Agent::run() { scriptURL = QUrl(_payload); } - NetworkAccessManager& networkManager = NetworkAccessManager::getInstance(); - QNetworkReply *reply = networkManager.get(QNetworkRequest(scriptURL)); - QNetworkDiskCache* cache = new QNetworkDiskCache(&networkManager); + NetworkAccessManager& networkAccessManager = NetworkAccessManager::getInstance(); + QNetworkReply *reply = networkAccessManager.get(QNetworkRequest(scriptURL)); + QNetworkDiskCache* cache = new QNetworkDiskCache(&networkAccessManager); QString cachePath = QStandardPaths::writableLocation(QStandardPaths::DataLocation); cache->setCacheDirectory(!cachePath.isEmpty() ? cachePath : "agentCache"); - networkManager.setCache(cache); + QMetaObject::invokeMethod(&networkAccessManager, "setCache", + Qt::BlockingQueuedConnection, + Q_ARG(QAbstractNetworkCache*, cache)); qDebug() << "Downloading script at" << scriptURL.toString(); diff --git a/interface/src/Application.cpp b/interface/src/Application.cpp index 10b6fc8165..7193a06125 100644 --- a/interface/src/Application.cpp +++ b/interface/src/Application.cpp @@ -317,7 +317,9 @@ Application::Application(int& argc, char** argv, QElapsedTimer &startup_time) : NetworkAccessManager& networkAccessManager = NetworkAccessManager::getInstance(); QNetworkDiskCache* cache = new QNetworkDiskCache(&networkAccessManager); cache->setCacheDirectory(!cachePath.isEmpty() ? cachePath : "interfaceCache"); - networkAccessManager.setCache(cache); + QMetaObject::invokeMethod(&networkAccessManager, "setCache", + Qt::BlockingQueuedConnection, + Q_ARG(QAbstractNetworkCache*, cache)); ResourceCache::setRequestLimit(3);