[webkit-changes] [WebKit/WebKit] 15b02a: [ANGLE] Clear pending program linking in Context::...

Dan Glastonbury noreply at github.com
Mon Oct 23 20:50:19 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 15b02a1209b1a129490ed9e0b587aeed29ff1c68
      https://github.com/WebKit/WebKit/commit/15b02a1209b1a129490ed9e0b587aeed29ff1c68
  Author: Dan Glastonbury <djg at apple.com>
  Date:   2023-10-23 (Mon, 23 Oct 2023)

  Changed paths:
    M Source/ThirdParty/ANGLE/changes.diff
    M Source/ThirdParty/ANGLE/src/libANGLE/Context.cpp
    M Tools/TestWebKitAPI/Tests/WebCore/cocoa/TestGraphicsContextGLCocoa.mm

  Log Message:
  -----------
  [ANGLE] Clear pending program linking in Context::onDestroy
https://bugs.webkit.org/show_bug.cgi?id=263429
rdar://117242201

Reviewed by Kimmo Kinnunen.

When destroying Context, ANGLE resets any internal state before releasing
allocated objects, such as Programs and Shaders. When destroying a program, any
pending program linking is resolved via Program::resolveLink. This results in
trying to access the Context state that’s just been reset.

To work around this, we ensure there are no pending links before resetting the
Context state.

* Source/ThirdParty/ANGLE/changes.diff:
* Source/ThirdParty/ANGLE/src/libANGLE/Context.cpp:
(gl::Context::onDestroy):
* Tools/TestWebKitAPI/Tests/WebCore/cocoa/TestGraphicsContextGLCocoa.mm:
(TestWebKitAPI::TEST_F):

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




More information about the webkit-changes mailing list