Changeset 282011 in webkit
- Timestamp:
- Sep 3, 2021, 12:11:25 PM (5 years ago)
- Location:
- trunk/Source/WebKit
- Files:
-
- 2 edited
-
ChangeLog (modified) (1 diff)
-
GPUProcess/graphics/RemoteRenderingBackend.cpp (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebKit/ChangeLog
r282006 r282011 1 2021-09-03 Chris Dumez <cdumez@apple.com> 2 3 Fix race in RemoteRenderingBackend::allowsExitUnderMemoryPressure() 4 https://bugs.webkit.org/show_bug.cgi?id=229870 5 <rdar://82459484> 6 7 Reviewed by David Kilzer. 8 9 RemoteRenderingBackend::m_remoteResourceCache should only be used safely from RemoteRenderingBackend's work queue. 10 RemoteRenderingBackend::allowsExitUnderMemoryPressure() gets called on the main thread so we need to make sure we 11 dispatch to RemoteRenderingBackend's work queue before accessing m_remoteResourceCache. 12 13 * GPUProcess/graphics/RemoteRenderingBackend.cpp: 14 (WebKit::RemoteRenderingBackend::allowsExitUnderMemoryPressure const): 15 1 16 2021-09-03 Alex Christensen <achristensen@webkit.org> 2 17 -
trunk/Source/WebKit/GPUProcess/graphics/RemoteRenderingBackend.cpp
r280754 r282011 682 682 bool RemoteRenderingBackend::allowsExitUnderMemoryPressure() const 683 683 { 684 return m_remoteResourceCache.imageBuffers().isEmpty() && m_remoteResourceCache.nativeImages().isEmpty(); 684 ASSERT(isMainRunLoop()); 685 bool hasActiveDrawables = false; 686 m_workQueue->dispatchSync([this, &hasActiveDrawables] { 687 hasActiveDrawables = !m_remoteResourceCache.imageBuffers().isEmpty() || !m_remoteResourceCache.nativeImages().isEmpty(); 688 }); 689 return !hasActiveDrawables; 685 690 } 686 691
Note:
See TracChangeset
for help on using the changeset viewer.