Switched call to setCache to invokeMethod

This commit is contained in:
Atlante45 2014-07-02 14:31:19 -07:00
parent 84ea9833bb
commit 1ac38c9884
2 changed files with 9 additions and 5 deletions

View file

@ -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();

View file

@ -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);