Changeset 244162 in webkit
- Timestamp:
- Apr 10, 2019, 3:59:14 PM (7 years ago)
- Location:
- trunk/Source/WebKit
- Files:
-
- 2 edited
-
ChangeLog (modified) (1 diff)
-
NetworkProcess/cache/CacheStorageEngine.cpp (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebKit/ChangeLog
r244161 r244162 1 2019-04-10 Youenn Fablet <youenn@apple.com> 2 3 Clear Cache Storage structures before removing all related files 4 https://bugs.webkit.org/show_bug.cgi?id=196650 5 6 Reviewed by Alex Christensen. 7 8 Previously, we were clearing files in parallel to clearing the internal CacheStorage structures. 9 To make things more deterministic, clear files/folders directly 10 after CachesStorage structures have finished being cleared. 11 12 * NetworkProcess/cache/CacheStorageEngine.cpp: 13 (WebKit::CacheStorage::Engine::clearAllCaches): 14 (WebKit::CacheStorage::Engine::clearCachesForOrigin): 15 1 16 2019-04-10 Alex Christensen <achristensen@webkit.org> 2 17 -
trunk/Source/WebKit/NetworkProcess/cache/CacheStorageEngine.cpp
r243339 r244162 524 524 ASSERT(RunLoop::isMain()); 525 525 526 auto callbackAggregator = CallbackAggregator::create(WTFMove(completionHandler)); 526 auto callbackAggregator = CallbackAggregator::create([this, protectedThis = makeRef(*this), completionHandler = WTFMove(completionHandler)]() mutable { 527 if (!this->shouldPersist()) 528 return; 529 530 this->clearAllCachesFromDisk(WTFMove(completionHandler)); 531 }); 527 532 528 533 for (auto& caches : m_caches.values()) 529 534 caches->clear([callbackAggregator = callbackAggregator.copyRef()] { }); 530 531 if (!shouldPersist())532 return;533 534 clearAllCachesFromDisk([callbackAggregator = WTFMove(callbackAggregator)] { });535 535 } 536 536 … … 552 552 ASSERT(RunLoop::isMain()); 553 553 554 auto callbackAggregator = CallbackAggregator::create(WTFMove(completionHandler)); 554 auto callbackAggregator = CallbackAggregator::create([this, protectedThis = makeRef(*this), origin, completionHandler = WTFMove(completionHandler)]() mutable { 555 if (!this->shouldPersist()) 556 return; 557 558 this->clearCachesForOriginFromDisk(origin, [completionHandler = WTFMove(completionHandler)]() mutable { 559 completionHandler(); 560 }); 561 }); 555 562 556 563 for (auto& keyValue : m_caches) { … … 558 565 keyValue.value->clear([callbackAggregator = callbackAggregator.copyRef()] { }); 559 566 } 560 561 if (!shouldPersist())562 return;563 564 clearCachesForOriginFromDisk(origin, [callbackAggregator = WTFMove(callbackAggregator)] { });565 567 } 566 568
Note:
See TracChangeset
for help on using the changeset viewer.