Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: aad3188c8a8d1f828860100602581ee568aa24d5
      
https://github.com/WebKit/WebKit/commit/aad3188c8a8d1f828860100602581ee568aa24d5
  Author: Tadeu Zagallo <[email protected]>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    A LayoutTests/fast/webgpu/regression/repro_176812014-expected.txt
    A LayoutTests/fast/webgpu/regression/repro_176812014.html
    M Source/WebGPU/WebGPU/BindGroupLayout.mm

  Log Message:
  -----------
  [WebGPU] Stale WeakPtr comparison in 
BindGroupLayout::errorValidatingBindGroupCompatibility allows incompatible 
auto/explicit layout pairing
https://bugs.webkit.org/show_bug.cgi?id=315496
rdar://176812014

Reviewed by Mike Wyrzykowski.

We were using weak pointers to compare the autogenerated pipeline layouts when
checking for compatibility of two bind groups, however the weak pointer can be
null in two scenarios: when the layout is explicit or when the pipeline layout
has been destroyed. That could result in incorrectly considering two bind groups
compatible when one is pipeline layout is explicit and the other has been 
destroyed.
In order to avoid that we explicitly check whether both bind groups use auto
generated layouts.

Test: fast/webgpu/regression/repro_176812014.html

* LayoutTests/fast/webgpu/regression/repro_176812014-expected.txt: Added.
* LayoutTests/fast/webgpu/regression/repro_176812014.html: Added.
* Source/WebGPU/WebGPU/BindGroupLayout.mm:
(WebGPU::BindGroupLayout::errorValidatingBindGroupCompatibility const):

Originally-landed-as: 305413.964@safari-7624-branch (48e38ee5acbc). 
rdar://180428905
Canonical link: https://commits.webkit.org/316134@main



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

Reply via email to