Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: c374428fdcece156aa09080f44a4806b7c4dceb9
      
https://github.com/WebKit/WebKit/commit/c374428fdcece156aa09080f44a4806b7c4dceb9
  Author: Gerald Squelart <[email protected]>
  Date:   2026-08-14 (Fri, 14 Aug 2026)

  Changed paths:
    M Source/WebCore/platform/graphics/cocoa/IOSurface.h
    M Source/WebCore/platform/graphics/cocoa/IOSurface.mm
    M Source/WebKit/UIProcess/WebPageProxy.cpp
    M Tools/TestWebKitAPI/Tests/WebCore/cocoa/IOSurfaceTests.mm

  Log Message:
  -----------
  In WebPageProxy::takeSnapshot(), validate IOSurface from MachSendRight
rdar://176886608

Reviewed by Mike Wyrzykowski.

WebPageProxy::takeSnapshot() now uses the new
IOSurface::createFromUntrustedSendRight(), which has stronger checks of
the MachSendRight-provided IOSurface, expecting a valid IOSurface as
produced uncompressed and uni-planar from IOSurface::create().

Test: Tools/TestWebKitAPI/Tests/WebCore/cocoa/IOSurfaceTests.mm
* Source/WebCore/platform/graphics/cocoa/IOSurface.h:
* Source/WebCore/platform/graphics/cocoa/IOSurface.mm:
(WebCore::validateAndCreateFromUntrustedSurface):
(WebCore::IOSurface::createFromUntrustedUncompressedWebKitSendRight):
* Source/WebKit/UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::takeSnapshot):
* Tools/TestWebKitAPI/Tests/WebCore/cocoa/IOSurfaceTests.mm:
(TestWebKitAPI::TEST(IOSurfaceTest, 
createFromUntrustedUncompressedWebKitSendRightSRGB)):
(TestWebKitAPI::TEST(IOSurfaceTest, 
createFromUntrustedUncompressedWebKitSendRightRGBA16F)):
(TestWebKitAPI::TEST(IOSurfaceTest, 
createFromUntrustedUncompressedWebKitSendRightYUV422)):

Originally-landed-as: [email protected] (5126b6a5a9e2). 
rdar://184745333
Canonical link: https://commits.webkit.org/319213@main



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications

Reply via email to