Changeset 176450 in webkit
- Timestamp:
- Nov 21, 2014, 9:04:42 AM (12 years ago)
- Location:
- trunk/Source
- Files:
-
- 28 edited
-
WebCore/ChangeLog (modified) (1 diff)
-
WebCore/inspector/InspectorPageAgent.cpp (modified) (1 diff)
-
WebCore/inspector/InspectorResourceAgent.cpp (modified) (3 diffs)
-
WebCore/loader/DocumentLoader.cpp (modified) (3 diffs)
-
WebCore/loader/FrameLoader.cpp (modified) (1 diff)
-
WebCore/loader/SubresourceLoader.cpp (modified) (5 diffs)
-
WebCore/loader/archive/cf/LegacyWebArchive.cpp (modified) (1 diff)
-
WebCore/loader/cache/CachedImage.cpp (modified) (2 diffs)
-
WebCore/loader/cache/CachedResource.cpp (modified) (12 diffs)
-
WebCore/loader/cache/CachedResourceLoader.cpp (modified) (12 diffs)
-
WebCore/loader/cache/MemoryCache.cpp (modified) (3 diffs)
-
WebCore/loader/cache/MemoryCache.h (modified) (3 diffs)
-
WebCore/loader/cocoa/DiskCacheMonitorCocoa.mm (modified) (1 diff)
-
WebCore/page/FrameView.cpp (modified) (2 diffs)
-
WebCore/platform/MemoryPressureHandler.cpp (modified) (1 diff)
-
WebCore/testing/Internals.cpp (modified) (1 diff)
-
WebKit/mac/ChangeLog (modified) (1 diff)
-
WebKit/mac/Misc/WebCache.mm (modified) (7 diffs)
-
WebKit/mac/WebView/WebView.mm (modified) (1 diff)
-
WebKit/win/ChangeLog (modified) (1 diff)
-
WebKit/win/WebCache.cpp (modified) (4 diffs)
-
WebKit/win/WebView.cpp (modified) (1 diff)
-
WebKit2/ChangeLog (modified) (1 diff)
-
WebKit2/WebProcess/Network/NetworkProcessConnection.cpp (modified) (1 diff)
-
WebKit2/WebProcess/ResourceCache/WebResourceCacheManager.cpp (modified) (2 diffs)
-
WebKit2/WebProcess/WebProcess.cpp (modified) (5 diffs)
-
WebKit2/WebProcess/cocoa/WebProcessCocoa.mm (modified) (1 diff)
-
WebKit2/WebProcess/soup/WebProcessSoup.cpp (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/ChangeLog
r176448 r176450 1 2014-11-21 Anders Carlsson <andersca@apple.com> 2 3 Make memoryCache() return a reference 4 https://bugs.webkit.org/show_bug.cgi?id=138939 5 6 Reviewed by Antti Koivisto. 7 8 * inspector/InspectorPageAgent.cpp: 9 (WebCore::InspectorPageAgent::cachedResource): 10 * inspector/InspectorResourceAgent.cpp: 11 (WebCore::InspectorResourceAgent::replayXHR): 12 (WebCore::InspectorResourceAgent::setCacheDisabled): 13 (WebCore::InspectorResourceAgent::mainFrameNavigated): 14 * loader/DocumentLoader.cpp: 15 (WebCore::areAllLoadersPageCacheAcceptable): 16 (WebCore::DocumentLoader::finishedLoading): 17 (WebCore::DocumentLoader::responseReceived): 18 * loader/FrameLoader.cpp: 19 (WebCore::FrameLoader::tellClientAboutPastMemoryCacheLoads): 20 * loader/SubresourceLoader.cpp: 21 (WebCore::SubresourceLoader::willSendRequest): 22 (WebCore::SubresourceLoader::didReceiveResponse): 23 (WebCore::SubresourceLoader::didFail): 24 (WebCore::SubresourceLoader::willCancel): 25 * loader/archive/cf/LegacyWebArchive.cpp: 26 (WebCore::LegacyWebArchive::create): 27 * loader/cache/CachedImage.cpp: 28 (WebCore::CachedImage::addIncrementalDataBuffer): 29 (WebCore::CachedImage::finishLoading): 30 * loader/cache/CachedResource.cpp: 31 (WebCore::deadDecodedDataDeletionIntervalForResourceType): 32 (WebCore::CachedResource::~CachedResource): 33 (WebCore::CachedResource::failBeforeStarting): 34 (WebCore::CachedResource::addClientToSet): 35 (WebCore::CachedResource::removeClient): 36 (WebCore::CachedResource::destroyDecodedDataIfNeeded): 37 (WebCore::CachedResource::setDecodedSize): 38 (WebCore::CachedResource::setEncodedSize): 39 (WebCore::CachedResource::didAccessDecodedData): 40 * loader/cache/CachedResourceLoader.cpp: 41 (WebCore::CachedResourceLoader::requestUserCSSStyleSheet): 42 (WebCore::CachedResourceLoader::requestResource): 43 (WebCore::CachedResourceLoader::revalidateResource): 44 (WebCore::CachedResourceLoader::loadResource): 45 (WebCore::CachedResourceLoader::clearPreloads): 46 (WebCore::CachedResourceLoader::printPreloadStats): 47 * loader/cache/MemoryCache.cpp: 48 (WebCore::memoryCache): 49 (WebCore::MemoryCache::removeRequestFromCache): 50 (WebCore::MemoryCache::removeRequestFromSessionCaches): 51 * loader/cache/MemoryCache.h: 52 * loader/cocoa/DiskCacheMonitorCocoa.mm: 53 (WebCore::DiskCacheMonitor::resourceBecameFileBacked): 54 * page/FrameView.cpp: 55 (WebCore::FrameView::willPaintContents): 56 (WebCore::FrameView::didPaintContents): 57 * platform/MemoryPressureHandler.cpp: 58 (WebCore::MemoryPressureHandler::releaseCriticalMemory): 59 * testing/Internals.cpp: 60 (WebCore::Internals::isLoadingFromMemoryCache): 61 1 62 2014-11-21 Daniel Bates <dabates@apple.com> 2 63 -
trunk/Source/WebCore/inspector/InspectorPageAgent.cpp
r176358 r176450 264 264 request.setDomainForCachePartition(frame->document()->topOrigin()->domainForCachePartition()); 265 265 #endif 266 cachedResource = memoryCache() ->resourceForRequest(request, frame->page()->sessionID());266 cachedResource = memoryCache().resourceForRequest(request, frame->page()->sessionID()); 267 267 } 268 268 -
trunk/Source/WebCore/inspector/InspectorResourceAgent.cpp
r175549 r176450 708 708 #endif 709 709 710 CachedResource* cachedResource = memoryCache() ->resourceForRequest(request, m_pageAgent->page()->sessionID());710 CachedResource* cachedResource = memoryCache().resourceForRequest(request, m_pageAgent->page()->sessionID()); 711 711 if (cachedResource) 712 memoryCache() ->remove(cachedResource);712 memoryCache().remove(cachedResource); 713 713 714 714 xhr->open(xhrReplayData->method(), xhrReplayData->url(), xhrReplayData->async(), IGNORE_EXCEPTION); … … 742 742 m_cacheDisabled = cacheDisabled; 743 743 if (cacheDisabled) 744 memoryCache() ->evictResources();744 memoryCache().evictResources(); 745 745 } 746 746 … … 790 790 { 791 791 if (m_cacheDisabled) 792 memoryCache() ->evictResources();792 memoryCache().evictResources(); 793 793 794 794 m_resourcesData->clear(m_pageAgent->loaderId(loader)); -
trunk/Source/WebCore/loader/DocumentLoader.cpp
r175740 r176450 107 107 return false; 108 108 109 CachedResource* cachedResource = memoryCache() ->resourceForURL(handle->firstRequest().url(), loader->frameLoader()->frame().page()->sessionID());109 CachedResource* cachedResource = memoryCache().resourceForURL(handle->firstRequest().url(), loader->frameLoader()->frame().page()->sessionID()); 110 110 if (!cachedResource) 111 111 return false; … … 449 449 if (m_frame) { 450 450 if (m_mainResource && m_frame->document()->hasManifest()) 451 memoryCache() ->remove(m_mainResource.get());451 memoryCache().remove(m_mainResource.get()); 452 452 } 453 453 m_applicationCacheHost->finishedLoadingMainResource(); … … 600 600 // from the application cache, ensure we don't save the result for future use. 601 601 if (willLoadFallback) 602 memoryCache() ->remove(m_mainResource.get());602 memoryCache().remove(m_mainResource.get()); 603 603 604 604 if (willLoadFallback) -
trunk/Source/WebCore/loader/FrameLoader.cpp
r176096 r176450 3384 3384 size_t size = pastLoads.size(); 3385 3385 for (size_t i = 0; i < size; ++i) { 3386 CachedResource* resource = memoryCache() ->resourceForRequest(pastLoads[i], m_frame.page()->sessionID());3386 CachedResource* resource = memoryCache().resourceForRequest(pastLoads[i], m_frame.page()->sessionID()); 3387 3387 3388 3388 // FIXME: These loads, loaded from cache, but now gone from the cache by the time -
trunk/Source/WebCore/loader/SubresourceLoader.cpp
r176172 r176450 157 157 if (newRequest.isConditional() && m_resource->resourceToRevalidate() && newRequest.url() != m_resource->resourceToRevalidate()->response().url()) { 158 158 newRequest.makeUnconditional(); 159 memoryCache() ->revalidationFailed(m_resource);159 memoryCache().revalidationFailed(m_resource); 160 160 } 161 161 … … 203 203 // Existing resource is ok, just use it updating the expiration time. 204 204 m_resource->setResponse(response); 205 memoryCache() ->revalidationSucceeded(m_resource, response);205 memoryCache().revalidationSucceeded(m_resource, response); 206 206 if (!reachedTerminalState()) 207 207 ResourceLoader::didReceiveResponse(response); … … 209 209 } 210 210 // Did not get 304 response, continue as a regular resource load. 211 memoryCache() ->revalidationFailed(m_resource);211 memoryCache().revalidationFailed(m_resource); 212 212 } 213 213 … … 329 329 m_state = Finishing; 330 330 if (m_resource->resourceToRevalidate()) 331 memoryCache() ->revalidationFailed(m_resource);331 memoryCache().revalidationFailed(m_resource); 332 332 m_resource->setResourceError(error); 333 333 if (!m_resource->isPreloaded()) 334 memoryCache() ->remove(m_resource);334 memoryCache().remove(m_resource); 335 335 m_resource->error(CachedResource::LoadError); 336 336 cleanupForError(error); … … 362 362 #endif 363 363 if (m_resource->resourceToRevalidate()) 364 memoryCache() ->revalidationFailed(m_resource);364 memoryCache().revalidationFailed(m_resource); 365 365 m_resource->setResourceError(error); 366 memoryCache() ->remove(m_resource);366 memoryCache().remove(m_resource); 367 367 } 368 368 -
trunk/Source/WebCore/loader/archive/cf/LegacyWebArchive.cpp
r176172 r176450 548 548 request.setDomainForCachePartition(frame->document()->topOrigin()->domainForCachePartition()); 549 549 #endif 550 CachedResource* cachedResource = memoryCache() ->resourceForRequest(request, frame->page()->sessionID());550 CachedResource* cachedResource = memoryCache().resourceForRequest(request, frame->page()->sessionID()); 551 551 if (cachedResource) { 552 552 if (RefPtr<ArchiveResource> resource = ArchiveResource::create(cachedResource->resourceBuffer(), subresourceURL, cachedResource->response())) { -
trunk/Source/WebCore/loader/cache/CachedImage.cpp
r175549 r176450 382 382 error(errorOccurred() ? status() : DecodeError); 383 383 if (inCache()) 384 memoryCache() ->remove(this);384 memoryCache().remove(this); 385 385 return; 386 386 } … … 423 423 error(errorOccurred() ? status() : DecodeError); 424 424 if (inCache()) 425 memoryCache() ->remove(this);425 memoryCache().remove(this); 426 426 return; 427 427 } -
trunk/Source/WebCore/loader/cache/CachedResource.cpp
r176276 r176450 104 104 return std::chrono::milliseconds { 0 }; 105 105 106 return memoryCache() ->deadDecodedDataDeletionInterval();106 return memoryCache().deadDecodedDataDeletionInterval(); 107 107 } 108 108 … … 163 163 ASSERT(!inCache()); 164 164 ASSERT(!m_deleted); 165 ASSERT(url().isNull() || memoryCache() ->resourceForRequest(resourceRequest(), sessionID()) != this);165 ASSERT(url().isNull() || memoryCache().resourceForRequest(resourceRequest(), sessionID()) != this); 166 166 167 167 #ifndef NDEBUG … … 179 179 LOG(ResourceLoading, "Cannot start loading '%s'", url().string().latin1().data()); 180 180 if (m_resourceToRevalidate) 181 memoryCache() ->revalidationFailed(this);181 memoryCache().revalidationFailed(this); 182 182 error(CachedResource::LoadError); 183 183 } … … 416 416 } 417 417 if (!hasClients() && inCache()) 418 memoryCache() ->addToLiveResourcesSize(this);418 memoryCache().addToLiveResourcesSize(this); 419 419 420 420 if ((m_type == RawResource || m_type == MainResource) && !m_response.isNull() && !m_proxyResource) { … … 448 448 if (!deleted && !hasClients()) { 449 449 if (inCache()) { 450 memoryCache() ->removeFromLiveResourcesSize(this);451 memoryCache() ->removeFromLiveDecodedResourcesList(this);450 memoryCache().removeFromLiveResourcesSize(this); 451 memoryCache().removeFromLiveDecodedResourcesList(this); 452 452 } 453 453 if (!m_switchingClientsToRevalidatedResource) … … 459 459 // "... History buffers MAY store such responses as part of their normal operation." 460 460 // We allow non-secure content to be reused in history, but we do not allow secure content to be reused. 461 memoryCache() ->remove(this);461 memoryCache().remove(this); 462 462 } 463 memoryCache() ->prune();463 memoryCache().prune(); 464 464 } 465 465 // This object may be dead here. … … 470 470 if (!m_decodedSize) 471 471 return; 472 if (!memoryCache() ->deadDecodedDataDeletionInterval().count())472 if (!memoryCache().deadDecodedDataDeletionInterval().count()) 473 473 return; 474 474 m_decodedDataDeletionTimer.restart(); … … 500 500 // Remove before updating m_decodedSize, so we find the resource in the correct LRU list. 501 501 if (inCache()) 502 memoryCache() ->removeFromLRUList(this);502 memoryCache().removeFromLRUList(this); 503 503 504 504 m_decodedSize = size; … … 506 506 if (inCache()) { 507 507 // Now insert into the new LRU list. 508 memoryCache() ->insertInLRUList(this);508 memoryCache().insertInLRUList(this); 509 509 510 510 // Insert into or remove from the live decoded list if necessary. … … 516 516 // a problem. For more details please see: https://bugs.webkit.org/show_bug.cgi?id=30209 517 517 if (m_decodedSize && !m_inLiveDecodedResourcesList && hasClients()) 518 memoryCache() ->insertInLiveDecodedResourcesList(this);518 memoryCache().insertInLiveDecodedResourcesList(this); 519 519 else if (!m_decodedSize && m_inLiveDecodedResourcesList) 520 memoryCache() ->removeFromLiveDecodedResourcesList(this);520 memoryCache().removeFromLiveDecodedResourcesList(this); 521 521 522 522 // Update the cache's size totals. 523 memoryCache() ->adjustSize(hasClients(), delta);523 memoryCache().adjustSize(hasClients(), delta); 524 524 } 525 525 } … … 535 535 // Remove before updating m_encodedSize, so we find the resource in the correct LRU list. 536 536 if (inCache()) 537 memoryCache() ->removeFromLRUList(this);537 memoryCache().removeFromLRUList(this); 538 538 539 539 m_encodedSize = size; 540 540 541 541 if (inCache()) { 542 memoryCache() ->insertInLRUList(this);543 memoryCache() ->adjustSize(hasClients(), delta);542 memoryCache().insertInLRUList(this); 543 memoryCache().adjustSize(hasClients(), delta); 544 544 } 545 545 } … … 551 551 if (inCache()) { 552 552 if (m_inLiveDecodedResourcesList) { 553 memoryCache() ->removeFromLiveDecodedResourcesList(this);554 memoryCache() ->insertInLiveDecodedResourcesList(this);553 memoryCache().removeFromLiveDecodedResourcesList(this); 554 memoryCache().insertInLiveDecodedResourcesList(this); 555 555 } 556 memoryCache() ->prune();556 memoryCache().prune(); 557 557 } 558 558 } -
trunk/Source/WebCore/loader/cache/CachedResourceLoader.cpp
r176410 r176450 212 212 #endif 213 213 214 if (CachedResource* existing = memoryCache() ->resourceForRequest(request.resourceRequest(), sessionID())) {214 if (CachedResource* existing = memoryCache().resourceForRequest(request.resourceRequest(), sessionID())) { 215 215 if (is<CachedCSSStyleSheet>(*existing)) 216 216 return downcast<CachedCSSStyleSheet>(existing); 217 memoryCache() ->remove(existing);217 memoryCache().remove(existing); 218 218 } 219 219 if (url.string() != request.resourceRequest().url()) … … 222 222 CachedResourceHandle<CachedCSSStyleSheet> userSheet = new CachedCSSStyleSheet(request.resourceRequest(), request.charset(), sessionID()); 223 223 224 memoryCache() ->add(userSheet.get());224 memoryCache().add(userSheet.get()); 225 225 // FIXME: loadResource calls setOwningCachedResourceLoader() if the resource couldn't be added to cache. Does this function need to call it, too? 226 226 … … 456 456 f->loader().client().dispatchWillRequestResource(&request); 457 457 458 if (memoryCache() ->disabled()) {458 if (memoryCache().disabled()) { 459 459 DocumentResourceMap::iterator it = m_documentResources.find(url.string()); 460 460 if (it != m_documentResources.end()) { … … 471 471 #endif 472 472 473 resource = memoryCache() ->resourceForRequest(request.resourceRequest(), sessionID());473 resource = memoryCache().resourceForRequest(request.resourceRequest(), sessionID()); 474 474 475 475 const RevalidationPolicy policy = determineRevalidationPolicy(type, request.mutableResourceRequest(), request.forPreload(), resource.get(), request.defer()); 476 476 switch (policy) { 477 477 case Reload: 478 memoryCache() ->remove(resource.get());478 memoryCache().remove(resource.get()); 479 479 FALLTHROUGH; 480 480 case Load: … … 487 487 if (!shouldContinueAfterNotifyingLoadedFromMemoryCache(request, resource.get())) 488 488 return 0; 489 memoryCache() ->resourceAccessed(resource.get());489 memoryCache().resourceAccessed(resource.get()); 490 490 break; 491 491 } … … 503 503 if (resource->errorOccurred()) { 504 504 if (resource->inCache()) 505 memoryCache() ->remove(resource.get());505 memoryCache().remove(resource.get()); 506 506 return 0; 507 507 } … … 525 525 ASSERT(resource); 526 526 ASSERT(resource->inCache()); 527 ASSERT(!memoryCache() ->disabled());527 ASSERT(!memoryCache().disabled()); 528 528 ASSERT(resource->canUseCacheValidator()); 529 529 ASSERT(!resource->resourceToRevalidate()); … … 537 537 newResource->setResourceToRevalidate(resource); 538 538 539 memoryCache() ->remove(resource);540 memoryCache() ->add(newResource.get());539 memoryCache().remove(resource); 540 memoryCache().add(newResource.get()); 541 541 #if ENABLE(RESOURCE_TIMING) 542 542 storeResourceTimingInitiatorInformation(resource, request); … … 549 549 CachedResourceHandle<CachedResource> CachedResourceLoader::loadResource(CachedResource::Type type, CachedResourceRequest& request) 550 550 { 551 ASSERT(!memoryCache() ->resourceForRequest(request.resourceRequest(), sessionID()));551 ASSERT(!memoryCache().resourceForRequest(request.resourceRequest(), sessionID())); 552 552 553 553 LOG(ResourceLoading, "Loading CachedResource for '%s'.", request.resourceRequest().url().stringCenterEllipsizedToLength().latin1().data()); … … 555 555 CachedResourceHandle<CachedResource> resource = createResource(type, request.mutableResourceRequest(), request.charset(), sessionID()); 556 556 557 if (!memoryCache() ->add(resource.get()))557 if (!memoryCache().add(resource.get())) 558 558 resource->setOwningCachedResourceLoader(this); 559 559 #if ENABLE(RESOURCE_TIMING) … … 942 942 bool deleted = res->deleteIfPossible(); 943 943 if (!deleted && res->preloadResult() == CachedResource::PreloadNotReferenced) 944 memoryCache() ->remove(res);944 memoryCache().remove(res); 945 945 } 946 946 m_preloads = nullptr; … … 986 986 987 987 if (res->errorOccurred()) 988 memoryCache() ->remove(res);988 memoryCache().remove(res); 989 989 990 990 res->decreasePreloadCount(); -
trunk/Source/WebCore/loader/cache/MemoryCache.cpp
r176276 r176450 56 56 static const auto defaultDecodedDataDeletionInterval = std::chrono::seconds { 0 }; 57 57 58 MemoryCache* memoryCache() 59 { 60 static MemoryCache* staticCache = new MemoryCache; 58 MemoryCache& memoryCache() 59 { 61 60 ASSERT(WTF::isMainThread()); 62 61 63 return staticCache; 62 static NeverDestroyed<MemoryCache> memoryCache; 63 64 return memoryCache; 64 65 } 65 66 … … 767 768 } 768 769 769 if (CachedResource* resource = memoryCache() ->resourceForRequest(request, sessionID))770 memoryCache() ->remove(resource);770 if (CachedResource* resource = memoryCache().resourceForRequest(request, sessionID)) 771 memoryCache().remove(resource); 771 772 } 772 773 … … 783 784 } 784 785 785 for (auto& resources : memoryCache() ->m_sessionResources) {786 if (CachedResource* resource = memoryCache() ->resourceForRequestImpl(request, *resources.value))787 memoryCache() ->remove(resource);786 for (auto& resources : memoryCache().m_sessionResources) { 787 if (CachedResource* resource = memoryCache().resourceForRequestImpl(request, *resources.value)) 788 memoryCache().remove(resource); 788 789 } 789 790 } -
trunk/Source/WebCore/loader/cache/MemoryCache.h
r174921 r176450 29 29 #include "SecurityOriginHash.h" 30 30 #include "SessionIDHash.h" 31 #include <wtf/Forward.h> 31 32 #include <wtf/HashMap.h> 32 33 #include <wtf/HashSet.h> … … 65 66 WTF_MAKE_NONCOPYABLE(MemoryCache); WTF_MAKE_FAST_ALLOCATED; 66 67 public: 67 friend MemoryCache* memoryCache();68 friend NeverDestroyed<MemoryCache>; 68 69 69 70 #if ENABLE(CACHE_PARTITIONING) … … 234 235 235 236 // Function to obtain the global cache. 236 WEBCORE_EXPORT MemoryCache *memoryCache();237 WEBCORE_EXPORT MemoryCache& memoryCache(); 237 238 238 239 } -
trunk/Source/WebCore/loader/cocoa/DiskCacheMonitorCocoa.mm
r176347 r176450 115 115 void DiskCacheMonitor::resourceBecameFileBacked(SharedBuffer& fileBackedBuffer) 116 116 { 117 CachedResource* resource = memoryCache() ->resourceForRequest(m_resourceRequest, m_sessionID);117 CachedResource* resource = memoryCache().resourceForRequest(m_resourceRequest, m_sessionID); 118 118 if (!resource) 119 119 return; -
trunk/Source/WebCore/page/FrameView.cpp
r176384 r176450 3737 3737 // To avoid unnecessary image decoding, we don't prune recently-decoded live resources here since 3738 3738 // we might need some live bitmaps on painting. 3739 memoryCache() ->prune();3739 memoryCache().prune(); 3740 3740 } 3741 3741 … … 3777 3777 // If we are low on memory, wipe them out after the paint. 3778 3778 if (paintingState.isTopLevelPainter && memoryPressureHandler().isUnderMemoryPressure()) 3779 memoryCache() ->pruneLiveResources(true);3779 memoryCache().pruneLiveResources(true); 3780 3780 3781 3781 // Regions may have changed as a result of the visibility/z-index of element changing. -
trunk/Source/WebCore/platform/MemoryPressureHandler.cpp
r173176 r176450 104 104 { 105 105 ReliefLogger log("Prune MemoryCache"); 106 memoryCache() ->pruneToPercentage(0);106 memoryCache().pruneToPercentage(0); 107 107 } 108 108 -
trunk/Source/WebCore/testing/Internals.cpp
r176350 r176450 381 381 if (!contextDocument() || !contextDocument()->page()) 382 382 return false; 383 CachedResource* resource = memoryCache() ->resourceForURL(contextDocument()->completeURL(url), contextDocument()->page()->sessionID());383 CachedResource* resource = memoryCache().resourceForURL(contextDocument()->completeURL(url), contextDocument()->page()->sessionID()); 384 384 return resource && resource->status() == CachedResource::Cached; 385 385 } -
trunk/Source/WebKit/mac/ChangeLog
r176437 r176450 1 2014-11-21 Anders Carlsson <andersca@apple.com> 2 3 Make memoryCache() return a reference 4 https://bugs.webkit.org/show_bug.cgi?id=138939 5 6 Reviewed by Antti Koivisto. 7 8 * Misc/WebCache.mm: 9 (+[WebCache statistics]): 10 (+[WebCache emptyInMemoryResources]): 11 (+[WebCache sizeOfDeadResources:]): 12 (+[WebCache addImageToCache:forURL:forFrame:]): 13 (+[WebCache removeImageFromCacheForURL:forFrame:]): 14 (+[WebCache imageForURL:]): 15 (+[WebCache setDisabled:]): 16 (+[WebCache isDisabled]): 17 * WebView/WebView.mm: 18 (+[WebView _setCacheModel:]): 19 1 20 2014-11-20 Benjamin Poulain <bpoulain@apple.com> 2 21 -
trunk/Source/WebKit/mac/Misc/WebCache.mm
r174921 r176450 66 66 + (NSArray *)statistics 67 67 { 68 WebCore::MemoryCache::Statistics s = WebCore::memoryCache() ->getStatistics();68 WebCore::MemoryCache::Statistics s = WebCore::memoryCache().getStatistics(); 69 69 70 70 return [NSArray arrayWithObjects: … … 141 141 [WebView _setCacheModel:cacheModel]; 142 142 143 WebCore::memoryCache() ->pruneLiveResources(true);143 WebCore::memoryCache().pruneLiveResources(true); 144 144 }); 145 145 } … … 147 147 + (void)sizeOfDeadResources:(int *)resources 148 148 { 149 WebCore::MemoryCache::Statistics stats = WebCore::memoryCache() ->getStatistics();149 WebCore::MemoryCache::Statistics stats = WebCore::memoryCache().getStatistics(); 150 150 if (resources) { 151 151 *resources = (stats.images.size - stats.images.liveSize) … … 177 177 topOrigin = core(frame)->document()->topOrigin(); 178 178 #endif 179 return WebCore::memoryCache() ->addImageToCache(image, url, topOrigin ? topOrigin->domainForCachePartition() : emptyString());179 return WebCore::memoryCache().addImageToCache(image, url, topOrigin ? topOrigin->domainForCachePartition() : emptyString()); 180 180 } 181 181 … … 194 194 topOrigin = core(frame)->document()->topOrigin(); 195 195 #endif 196 WebCore::memoryCache() ->removeImageFromCache(url, topOrigin ? topOrigin->domainForCachePartition() : emptyString());196 WebCore::memoryCache().removeImageFromCache(url, topOrigin ? topOrigin->domainForCachePartition() : emptyString()); 197 197 } 198 198 … … 202 202 return nullptr; 203 203 204 WebCore::CachedResource* cachedResource = WebCore::memoryCache() ->resourceForURL(url);204 WebCore::CachedResource* cachedResource = WebCore::memoryCache().resourceForURL(url); 205 205 if (!is<WebCore::CachedImage>(cachedResource)) 206 206 return nullptr; … … 218 218 return [[self _webkit_invokeOnMainThread] setDisabled:disabled]; 219 219 220 WebCore::memoryCache() ->setDisabled(disabled);220 WebCore::memoryCache().setDisabled(disabled); 221 221 } 222 222 223 223 + (BOOL)isDisabled 224 224 { 225 return WebCore::memoryCache() ->disabled();225 return WebCore::memoryCache().disabled(); 226 226 } 227 227 -
trunk/Source/WebKit/mac/WebView/WebView.mm
r176347 r176450 7901 7901 nsurlCacheDiskCapacity = std::max(nsurlCacheDiskCapacity, [nsurlCache diskCapacity]); 7902 7902 7903 memoryCache() ->setCapacities(cacheMinDeadCapacity, cacheMaxDeadCapacity, cacheTotalCapacity);7904 memoryCache() ->setDeadDecodedDataDeletionInterval(deadDecodedDataDeletionInterval);7903 memoryCache().setCapacities(cacheMinDeadCapacity, cacheMaxDeadCapacity, cacheTotalCapacity); 7904 memoryCache().setDeadDecodedDataDeletionInterval(deadDecodedDataDeletionInterval); 7905 7905 pageCache()->setCapacity(pageCacheCapacity); 7906 7906 #if PLATFORM(IOS) -
trunk/Source/WebKit/win/ChangeLog
r176173 r176450 1 2014-11-21 Anders Carlsson <andersca@apple.com> 2 3 Make memoryCache() return a reference 4 https://bugs.webkit.org/show_bug.cgi?id=138939 5 6 Reviewed by Antti Koivisto. 7 8 * WebCache.cpp: 9 (WebCache::statistics): 10 (WebCache::empty): 11 (WebCache::setDisabled): 12 (WebCache::disabled): 13 * WebView.cpp: 14 (WebView::setCacheModel): 15 1 16 2014-11-16 Zan Dobersek <zdobersek@igalia.com> 2 17 -
trunk/Source/WebKit/win/WebCache.cpp
r173988 r176450 101 101 return S_OK; 102 102 103 WebCore::MemoryCache::Statistics stat = WebCore::memoryCache() ->getStatistics();103 WebCore::MemoryCache::Statistics stat = WebCore::memoryCache().getStatistics(); 104 104 105 105 static CFStringRef imagesKey = CFSTR("images"); … … 208 208 HRESULT STDMETHODCALLTYPE WebCache::empty( void) 209 209 { 210 if (WebCore::memoryCache() ->disabled())210 if (WebCore::memoryCache().disabled()) 211 211 return S_OK; 212 WebCore::memoryCache() ->setDisabled(true);213 WebCore::memoryCache() ->setDisabled(false);212 WebCore::memoryCache().setDisabled(true); 213 WebCore::memoryCache().setDisabled(false); 214 214 215 215 // Empty the application cache. … … 225 225 /* [in] */ BOOL disabled) 226 226 { 227 WebCore::memoryCache() ->setDisabled(!!disabled);227 WebCore::memoryCache().setDisabled(!!disabled); 228 228 return S_OK; 229 229 } … … 234 234 if (!disabled) 235 235 return E_POINTER; 236 *disabled = WebCore::memoryCache() ->disabled();236 *disabled = WebCore::memoryCache().disabled(); 237 237 return S_OK; 238 238 } -
trunk/Source/WebKit/win/WebView.cpp
r176065 r176450 672 672 } 673 673 674 memoryCache() ->setCapacities(cacheMinDeadCapacity, cacheMaxDeadCapacity, cacheTotalCapacity);675 memoryCache() ->setDeadDecodedDataDeletionInterval(deadDecodedDataDeletionInterval);674 memoryCache().setCapacities(cacheMinDeadCapacity, cacheMaxDeadCapacity, cacheTotalCapacity); 675 memoryCache().setDeadDecodedDataDeletionInterval(deadDecodedDataDeletionInterval); 676 676 pageCache()->setCapacity(pageCacheCapacity); 677 677 -
trunk/Source/WebKit2/ChangeLog
r176448 r176450 1 2014-11-21 Anders Carlsson <andersca@apple.com> 2 3 Make memoryCache() return a reference 4 https://bugs.webkit.org/show_bug.cgi?id=138939 5 6 Reviewed by Antti Koivisto. 7 8 * WebProcess/Network/NetworkProcessConnection.cpp: 9 (WebKit::NetworkProcessConnection::didCacheResource): 10 * WebProcess/ResourceCache/WebResourceCacheManager.cpp: 11 (WebKit::WebResourceCacheManager::getCacheOrigins): 12 (WebKit::WebResourceCacheManager::clearCacheForOrigin): 13 * WebProcess/WebProcess.cpp: 14 (WebKit::WebProcess::terminate): 15 (WebKit::WebProcess::didClose): 16 (WebKit::WebProcess::clearResourceCaches): 17 (WebKit::getWebCoreMemoryCacheStatistics): 18 (WebKit::WebProcess::setMemoryCacheDisabled): 19 * WebProcess/cocoa/WebProcessCocoa.mm: 20 (WebKit::WebProcess::platformSetCacheModel): 21 * WebProcess/soup/WebProcessSoup.cpp: 22 (WebKit::WebProcess::platformSetCacheModel): 23 1 24 2014-11-21 Daniel Bates <dabates@apple.com> 2 25 -
trunk/Source/WebKit2/WebProcess/Network/NetworkProcessConnection.cpp
r175549 r176450 84 84 void NetworkProcessConnection::didCacheResource(const ResourceRequest& request, const ShareableResource::Handle& handle, SessionID sessionID) 85 85 { 86 CachedResource* resource = memoryCache() ->resourceForRequest(request, sessionID);86 CachedResource* resource = memoryCache().resourceForRequest(request, sessionID); 87 87 if (!resource) 88 88 return; -
trunk/Source/WebKit2/WebProcess/ResourceCache/WebResourceCacheManager.cpp
r160464 r176450 58 58 MemoryCache::SecurityOriginSet origins; 59 59 #endif 60 memoryCache() ->getOriginsWithCache(origins);60 memoryCache().getOriginsWithCache(origins); 61 61 62 62 #if USE(CFURLCACHE) … … 115 115 return; 116 116 117 memoryCache() ->removeResourcesWithOrigin(origin.get());117 memoryCache().removeResourcesWithOrigin(origin.get()); 118 118 119 119 #if USE(CFURLCACHE) -
trunk/Source/WebKit2/WebProcess/WebProcess.cpp
r176421 r176450 586 586 gcController().garbageCollectNow(); 587 587 fontCache().invalidate(); 588 memoryCache() ->setDisabled(true);588 memoryCache().setDisabled(true); 589 589 #endif 590 590 … … 639 639 gcController().garbageCollectSoon(); 640 640 fontCache().invalidate(); 641 memoryCache() ->setDisabled(true);641 memoryCache().setDisabled(true); 642 642 #endif 643 643 … … 711 711 setCacheModel(cacheModel); 712 712 713 memoryCache() ->evictResources();713 memoryCache().evictResources(); 714 714 715 715 // Empty the cross-origin preflight cache. … … 867 867 String javaScriptString(ASCIILiteral("JavaScript")); 868 868 869 MemoryCache::Statistics memoryCacheStatistics = memoryCache() ->getStatistics();869 MemoryCache::Statistics memoryCacheStatistics = memoryCache().getStatistics(); 870 870 871 871 HashMap<String, uint64_t> counts; … … 1249 1249 void WebProcess::setMemoryCacheDisabled(bool disabled) 1250 1250 { 1251 if (memoryCache() ->disabled() != disabled)1252 memoryCache() ->setDisabled(disabled);1251 if (memoryCache().disabled() != disabled) 1252 memoryCache().setDisabled(disabled); 1253 1253 } 1254 1254 -
trunk/Source/WebKit2/WebProcess/cocoa/WebProcessCocoa.mm
r176347 r176450 110 110 111 111 112 memoryCache() ->setCapacities(cacheMinDeadCapacity, cacheMaxDeadCapacity, cacheTotalCapacity);113 memoryCache() ->setDeadDecodedDataDeletionInterval(deadDecodedDataDeletionInterval);112 memoryCache().setCapacities(cacheMinDeadCapacity, cacheMaxDeadCapacity, cacheTotalCapacity); 113 memoryCache().setDeadDecodedDataDeletionInterval(deadDecodedDataDeletionInterval); 114 114 pageCache()->setCapacity(pageCacheCapacity); 115 115 -
trunk/Source/WebKit2/WebProcess/soup/WebProcessSoup.cpp
r174639 r176450 102 102 pageCacheCapacity, urlCacheMemoryCapacity, urlCacheDiskCapacity); 103 103 104 WebCore::memoryCache() ->setDisabled(cacheModel == CacheModelDocumentViewer);105 WebCore::memoryCache() ->setCapacities(cacheMinDeadCapacity, cacheMaxDeadCapacity, cacheTotalCapacity);106 WebCore::memoryCache() ->setDeadDecodedDataDeletionInterval(deadDecodedDataDeletionInterval);104 WebCore::memoryCache().setDisabled(cacheModel == CacheModelDocumentViewer); 105 WebCore::memoryCache().setCapacities(cacheMinDeadCapacity, cacheMaxDeadCapacity, cacheTotalCapacity); 106 WebCore::memoryCache().setDeadDecodedDataDeletionInterval(deadDecodedDataDeletionInterval); 107 107 WebCore::pageCache()->setCapacity(pageCacheCapacity); 108 108
Note:
See TracChangeset
for help on using the changeset viewer.