[webkit-changes] [WebKit/WebKit] e7ae0d: [WebXR] WebXR tests crash with full GPU Process
Dan Glastonbury
noreply at github.com
Sun May 12 18:24:35 PDT 2024
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: e7ae0d2e886fadd38c4fc0cde13fc9da1b30f9f9
https://github.com/WebKit/WebKit/commit/e7ae0d2e886fadd38c4fc0cde13fc9da1b30f9f9
Author: Dan Glastonbury <djg at apple.com>
Date: 2024-05-12 (Sun, 12 May 2024)
Changed paths:
M Source/WebCore/Modules/webxr/WebXROpaqueFramebuffer.h
M Source/WebCore/Modules/webxr/WebXROpaqueFramebufferCocoa.cpp
M Source/WebCore/platform/xr/PlatformXR.h
M Source/WebCore/testing/WebFakeXRDevice.cpp
M Source/WebCore/testing/WebFakeXRDevice.h
M Source/WebKit/Shared/XR/PlatformXR.serialization.in
Log Message:
-----------
[WebXR] WebXR tests crash with full GPU Process
https://bugs.webkit.org/show_bug.cgi?id=233913
rdar://86139280
Reviewed by Mike Wyrzykowski.
Fix SimulatedXRDevice to work on Cocoa again.
SimulatedXRDevice had been patched to create a dummy IOSurface so the code would
compile but it was never tested. SimulatedXRDevice was written before GPU
process and was expecting to be able to create an OpenGL texture that could be
passed as WebXROpaqueFramebuffer's compositor texture.
Instead of using OpenGL, or IOSurface, for Cocoa we now create a temporary
renderbuffer to be used as the display color buffer, internal to
WebXROpaqueFramebuffer, if a null MachSendRight is received via
PlatformXR::FrameData::LayerData.
Fixed a logic error in WebXROpaqueFramebuffer::setupFramebuffer which was
causing the drawing attachments to never be allocated. This was causing the
checkFramebufferStatus in blitShared to fail.
* Source/WebCore/Modules/webxr/WebXROpaqueFramebuffer.cpp:
(WebCore::makeExternalImageSource):
(WebCore::createAndBindTempBuffer):
(WebCore::toIntSize):
(WebCore::WebXROpaqueFramebuffer::startFrame):
(WebCore::WebXROpaqueFramebuffer::setupFramebuffer):
* Source/WebCore/Modules/webxr/WebXROpaqueFramebuffer.h:
(WebCore::WebXRAttachmentSet::operator bool const):
* Source/WebCore/platform/xr/PlatformXR.h:
* Source/WebCore/testing/WebFakeXRDevice.cpp:
(WebCore::SimulatedXRDevice::initializeTrackingAndRendering):
(WebCore::SimulatedXRDevice::shutDownTrackingAndRendering):
(WebCore::SimulatedXRDevice::frameTimerFired):
(WebCore::SimulatedXRDevice::createLayerProjection):
(WebCore::SimulatedXRDevice::deleteLayer):
* Source/WebCore/testing/WebFakeXRDevice.h:
* Source/WebKit/Shared/XR/PlatformXR.serialization.in:
Canonical link: https://commits.webkit.org/278668@main
To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications
More information about the webkit-changes
mailing list