Title: [277162] trunk/Source/WebCore
- Revision
- 277162
- Author
- [email protected]
- Date
- 2021-05-07 00:44:31 -0700 (Fri, 07 May 2021)
Log Message
[GPU Process] Closing the GPU Process should clear all the back pointers from ItemBuffer to RemoteRenderingBackendProxy
https://bugs.webkit.org/show_bug.cgi?id=224744
<rdar://74592639>
Reviewed by Ryosuke Niwa.
RemoteRenderingBackendProxy::gpuProcessConnectionDidClose() clears the
the backends of all its RemoteImageBufferProxys. It also clears all the
SharedMemory which are referenced by the ItemBufferHandles.
So DisplayList::ImageBuffer::clearBackend() should clear all the
ItemBufferHandles of its DisplayList.
* platform/graphics/displaylists/DisplayListImageBuffer.h:
Modified Paths
Diff
Modified: trunk/Source/WebCore/ChangeLog (277161 => 277162)
--- trunk/Source/WebCore/ChangeLog 2021-05-07 06:15:40 UTC (rev 277161)
+++ trunk/Source/WebCore/ChangeLog 2021-05-07 07:44:31 UTC (rev 277162)
@@ -1,3 +1,20 @@
+2021-05-07 Said Abou-Hallawa <[email protected]>
+
+ [GPU Process] Closing the GPU Process should clear all the back pointers from ItemBuffer to RemoteRenderingBackendProxy
+ https://bugs.webkit.org/show_bug.cgi?id=224744
+ <rdar://74592639>
+
+ Reviewed by Ryosuke Niwa.
+
+ RemoteRenderingBackendProxy::gpuProcessConnectionDidClose() clears the
+ the backends of all its RemoteImageBufferProxys. It also clears all the
+ SharedMemory which are referenced by the ItemBufferHandles.
+
+ So DisplayList::ImageBuffer::clearBackend() should clear all the
+ ItemBufferHandles of its DisplayList.
+
+ * platform/graphics/displaylists/DisplayListImageBuffer.h:
+
2021-05-06 Jean-Yves Avenard <[email protected]>
ArtworkImageLoader can call callback with null value.
Modified: trunk/Source/WebCore/platform/graphics/displaylists/DisplayListImageBuffer.h (277161 => 277162)
--- trunk/Source/WebCore/platform/graphics/displaylists/DisplayListImageBuffer.h 2021-05-07 06:15:40 UTC (rev 277161)
+++ trunk/Source/WebCore/platform/graphics/displaylists/DisplayListImageBuffer.h 2021-05-07 07:44:31 UTC (rev 277162)
@@ -87,6 +87,12 @@
m_drawingContext.replayDisplayList(BaseConcreteImageBuffer::context());
}
+ void clearBackend() override
+ {
+ m_drawingContext.displayList().clear();
+ BaseConcreteImageBuffer::clearBackend();
+ }
+
protected:
DrawingContext m_drawingContext;
std::unique_ptr<ItemBufferWritingClient> m_writingClient;
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes