Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 73b4bbb977893a1d7c47cc14940a4cc47e487c43
      
https://github.com/WebKit/WebKit/commit/73b4bbb977893a1d7c47cc14940a4cc47e487c43
  Author: Chris Dumez <[email protected]>
  Date:   2026-08-05 (Wed, 05 Aug 2026)

  Changed paths:
    M 
LayoutTests/imported/w3c/web-platform-tests/WebIDL/ecmascript-binding/global-immutable-prototype.any.sharedworker-expected.txt
    M Source/WebCore/workers/shared/SharedWorkerGlobalScope.idl

  Log Message:
  -----------
  SharedWorkerGlobalScope prototype is not an immutable prototype exotic object
https://bugs.webkit.org/show_bug.cgi?id=321067

Reviewed by Sam Weinig and Darin Adler.

Per Web IDL, the interface prototype object of a [Global] interface must be
an immutable prototype exotic object. WebKit implements this via the
IsImmutablePrototypeExoticObjectOnPrototype IDL extended attribute, which
DedicatedWorkerGlobalScope, ServiceWorkerGlobalScope, WorkerGlobalScope,
EventTarget and DOMWindow all declare. SharedWorkerGlobalScope was missing
it, so SharedWorkerGlobalScope.prototype was an ordinary extensible object
and Object.setPrototypeOf(SharedWorkerGlobalScope.prototype, {}) succeeded
instead of throwing a TypeError.

This matches the behavior of Chrome and Firefox and fixes the "Setting to a
different prototype" subtest of global-immutable-prototype.any.sharedworker.

No new tests, rebaselined existing WPT test.

* 
LayoutTests/imported/w3c/web-platform-tests/WebIDL/ecmascript-binding/global-immutable-prototype.any.sharedworker-expected.txt:
* Source/WebCore/workers/shared/SharedWorkerGlobalScope.idl:

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



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

Reply via email to