From 31bdeed396b98662fba43f0fb47a9afe643c7c57 Mon Sep 17 00:00:00 2001 From: Ryan Huffman Date: Thu, 27 Aug 2015 16:43:40 -0700 Subject: [PATCH 1/2] Remove cache limit for atp urls --- libraries/networking/src/ResourceCache.cpp | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/libraries/networking/src/ResourceCache.cpp b/libraries/networking/src/ResourceCache.cpp index b07c3cc60e..c24b83a57f 100644 --- a/libraries/networking/src/ResourceCache.cpp +++ b/libraries/networking/src/ResourceCache.cpp @@ -154,28 +154,29 @@ void ResourceCache::clearUnusedResource() { void ResourceCache::attemptRequest(Resource* resource) { auto sharedItems = DependencyManager::get(); - if (_requestLimit <= 0) { - qDebug() << "REQUEST LIMIT REACHED (" << _requestLimit << "), queueing: " << resource->getURL(); - // wait until a slot becomes available - sharedItems->_pendingRequests.append(resource); - return; - } - qDebug() << "-- Decreasing limit for : " << resource->getURL(); // Disable request limiting for ATP if (resource->getURL() != URL_SCHEME_ATP) { + if (_requestLimit <= 0) { + qDebug() << "REQUEST LIMIT REACHED (" << _requestLimit << "), queueing: " << resource->getURL(); + // wait until a slot becomes available + sharedItems->_pendingRequests.append(resource); + return; + } + + qDebug() << "-- Decreasing limit for : " << resource->getURL(); _requestLimit--; } + sharedItems->_loadingRequests.append(resource); resource->makeRequest(); } void ResourceCache::requestCompleted(Resource* resource) { - auto sharedItems = DependencyManager::get(); sharedItems->_loadingRequests.removeOne(resource); - qDebug() << "++ Increasing limit after finished: " << resource->getURL(); if (resource->getURL() != URL_SCHEME_ATP) { + qDebug() << "++ Increasing limit after finished: " << resource->getURL(); _requestLimit++; } From 4bbbd892bd0372cc8e24be2fea515635bfd8afc2 Mon Sep 17 00:00:00 2001 From: Ryan Huffman Date: Thu, 27 Aug 2015 16:46:33 -0700 Subject: [PATCH 2/2] Fix atp scheme checking in ResourceCache --- libraries/networking/src/ResourceCache.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libraries/networking/src/ResourceCache.cpp b/libraries/networking/src/ResourceCache.cpp index c24b83a57f..ec34e9c0b0 100644 --- a/libraries/networking/src/ResourceCache.cpp +++ b/libraries/networking/src/ResourceCache.cpp @@ -156,7 +156,7 @@ void ResourceCache::attemptRequest(Resource* resource) { auto sharedItems = DependencyManager::get(); // Disable request limiting for ATP - if (resource->getURL() != URL_SCHEME_ATP) { + if (resource->getURL().scheme() != URL_SCHEME_ATP) { if (_requestLimit <= 0) { qDebug() << "REQUEST LIMIT REACHED (" << _requestLimit << "), queueing: " << resource->getURL(); // wait until a slot becomes available @@ -175,7 +175,7 @@ void ResourceCache::attemptRequest(Resource* resource) { void ResourceCache::requestCompleted(Resource* resource) { auto sharedItems = DependencyManager::get(); sharedItems->_loadingRequests.removeOne(resource); - if (resource->getURL() != URL_SCHEME_ATP) { + if (resource->getURL().scheme() != URL_SCHEME_ATP) { qDebug() << "++ Increasing limit after finished: " << resource->getURL(); _requestLimit++; }