Changeset 240049 in webkit
- Timestamp:
- Jan 16, 2019 12:51:19 PM (5 years ago)
- Location:
- trunk/Source/WebCore
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/ChangeLog
r240047 r240049 1 2019-01-16 Youenn Fablet <youenn@apple.com> 2 3 ServiceWorkerContainer is leaking due to a ref cycle 4 https://bugs.webkit.org/show_bug.cgi?id=193462 5 <rdar://problem/47026303> 6 7 Reviewed by Brady Eidson. 8 9 ServiceWorkerContainer keeps a reference to its ready promise. 10 The ready promise keeps a ref to its value which is a ServiceWorkerRegistration. 11 ServiceWorkerRegistration keeps a ref to ServiceWorkerContainer. 12 13 To break the reference cycle, set the ready promise to zero when ServiceWorkerContainer is stopped. 14 15 Covered by imported/w3c/web-platform-tests/service-workers/service-worker/ready.https.html no longer leaking. 16 17 * workers/service/ServiceWorkerContainer.cpp: 18 (WebCore::ServiceWorkerContainer::stop): 19 1 20 2019-01-15 Simon Fraser <simon.fraser@apple.com> 2 21 -
trunk/Source/WebCore/workers/service/ServiceWorkerContainer.cpp
r239659 r240049 633 633 removeAllEventListeners(); 634 634 m_pendingPromises.clear(); 635 m_readyPromise = nullptr; 635 636 for (auto& job : m_jobMap.values()) 636 637 job->cancelPendingLoad();
Note: See TracChangeset
for help on using the changeset viewer.