[webkit-changes] [WebKit/WebKit] 8cfd07: GraphicsContextGL with*BufferAsNativeImage uses wr...

Kimmo Kinnunen noreply at github.com
Fri Apr 14 05:09:06 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 8cfd07c30f40c4f54884da3dcd7c9348ba9db359
      https://github.com/WebKit/WebKit/commit/8cfd07c30f40c4f54884da3dcd7c9348ba9db359
  Author: Kimmo Kinnunen <kkinnunen at apple.com>
  Date:   2023-04-14 (Fri, 14 Apr 2023)

  Changed paths:
    M Source/WebCore/platform/graphics/angle/GraphicsContextGLANGLE.cpp
    M Source/WebCore/platform/graphics/angle/GraphicsContextGLANGLE.h
    M Source/WebCore/platform/graphics/cocoa/GraphicsContextGLCocoa.h
    M Source/WebCore/platform/graphics/cocoa/GraphicsContextGLCocoa.mm
    M Source/WebKit/GPUProcess/graphics/RemoteGraphicsContextGL.cpp
    M Source/WebKit/GPUProcess/graphics/RemoteGraphicsContextGL.h

  Log Message:
  -----------
  GraphicsContextGL with*BufferAsNativeImage uses wrong conventions for passing functions
https://bugs.webkit.org/show_bug.cgi?id=254980
rdar://107600402

Reviewed by Matt Woodrow.

Use WTF::Function instead of std::function to match other WebKit code.

In RemoteGraphicsContextGL, do not pass the IPC completion handler into
the calling functions. This would imply deferred call, but the
withDrawingBufferAsNativeImage implies that the call cannot possibly defer,
e.g. the function argument implies limited lifetime of the NativeImage,
which in turn implies the non-deferred invocation.

* Source/WebCore/platform/graphics/angle/GraphicsContextGLANGLE.cpp:
(WebCore::GraphicsContextGLANGLE::withDrawingBufferAsNativeImage):
(WebCore::GraphicsContextGLANGLE::withDisplayBufferAsNativeImage):
* Source/WebCore/platform/graphics/angle/GraphicsContextGLANGLE.h:
* Source/WebCore/platform/graphics/cocoa/GraphicsContextGLCocoa.h:
* Source/WebCore/platform/graphics/cocoa/GraphicsContextGLCocoa.mm:
(WebCore::GraphicsContextGLCocoa::withDrawingBufferAsNativeImage):
(WebCore::GraphicsContextGLCocoa::withDisplayBufferAsNativeImage):
* Source/WebKit/GPUProcess/graphics/RemoteGraphicsContextGL.cpp:
(WebKit::RemoteGraphicsContextGL::paintRenderingResultsToCanvas):
(WebKit::RemoteGraphicsContextGL::paintRenderingResultsToCanvasWithQualifiedIdentifier):
(WebKit::RemoteGraphicsContextGL::paintCompositedResultsToCanvas):
(WebKit::RemoteGraphicsContextGL::paintCompositedResultsToCanvasWithQualifiedIdentifier):
(WebKit::RemoteGraphicsContextGL::paintNativeImageToImageBuffer):
* Source/WebKit/GPUProcess/graphics/RemoteGraphicsContextGL.h:

Canonical link: https://commits.webkit.org/262955@main




More information about the webkit-changes mailing list