Merge pull request #7453 from Atlante45/fix/atp-req-limit

Make ATP respect request limit
This commit is contained in:
Philip Rosedale 2016-03-24 09:20:30 -07:00
commit f8f0e48af9

View file

@ -216,17 +216,13 @@ Resource* ResourceCacheSharedItems::getHighestPendingRequest() {
bool ResourceCache::attemptRequest(Resource* resource) { bool ResourceCache::attemptRequest(Resource* resource) {
auto sharedItems = DependencyManager::get<ResourceCacheSharedItems>(); auto sharedItems = DependencyManager::get<ResourceCacheSharedItems>();
// Disable request limiting for ATP if (_requestsActive >= _requestLimit) {
if (resource->getURL().scheme() != URL_SCHEME_ATP) { // wait until a slot becomes available
if (_requestsActive >= _requestLimit) { sharedItems->appendPendingRequest(resource);
// wait until a slot becomes available return false;
sharedItems->appendPendingRequest(resource);
return false;
}
++_requestsActive;
} }
++_requestsActive;
sharedItems->appendActiveRequest(resource); sharedItems->appendActiveRequest(resource);
resource->makeRequest(); resource->makeRequest();
return true; return true;
@ -235,9 +231,7 @@ bool ResourceCache::attemptRequest(Resource* resource) {
void ResourceCache::requestCompleted(Resource* resource) { void ResourceCache::requestCompleted(Resource* resource) {
auto sharedItems = DependencyManager::get<ResourceCacheSharedItems>(); auto sharedItems = DependencyManager::get<ResourceCacheSharedItems>();
sharedItems->removeRequest(resource); sharedItems->removeRequest(resource);
if (resource->getURL().scheme() != URL_SCHEME_ATP) { --_requestsActive;
--_requestsActive;
}
attemptHighestPriorityRequest(); attemptHighestPriorityRequest();
} }