Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 346deb2b1c821e5216eeec79689a15f1317dd278
      
https://github.com/WebKit/WebKit/commit/346deb2b1c821e5216eeec79689a15f1317dd278
  Author: David Kilzer <[email protected]>
  Date:   2026-05-10 (Sun, 10 May 2026)

  Changed paths:
    M Source/ThirdParty/ANGLE/src/common/PoolAlloc.h

  Log Message:
  -----------
  REGRESSION (312740@main): [ASan/TSan] `angle::PoolAllocator` has inconsistent 
layout across translation units, crashing GPU process on WebGL shader compile
<https://bugs.webkit.org/show_bug.cgi?id=314526>
<rdar://176749270>

Unreviewed build fix.

Add `#include "common/platform.h"` to `PoolAlloc.h` so the
`ANGLE_WITH_ASAN` / `ANGLE_WITH_TSAN` check at the top of the
header sees those macros (defined via `__has_feature()` in
`platform.h`), fixing an ODR violation where `PoolAlloc.cpp` laid
out `angle::PoolAllocator` with the full 88-byte non-sanitizer
member set while `Compiler.cpp` laid it out with the 24-byte
sanitizer-only member set.  This caused the default constructor to
write 88 bytes into the caller's 24-byte stack slot and trip
AddressSanitizer's stack-buffer-overflow check on every WebGL
shader compile.

Covered by existing tests in LayoutTests/fast/canvas/webgl/.

* Source/ThirdParty/ANGLE/src/common/PoolAlloc.h:

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



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

Reply via email to