mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2025-10-24 00:49:46 +00:00
BindingsGenerator: Handle global interfaces without named properties
DedicatedWorkerGlobalScope is an object with a Global extended
attribute, but does not define any named property getters. This needs to
be handled by setting the prototype chain to:
DedicatedWorkerGlobalScope
^ DedicatedWorkerGlobalScopePrototype
^ WorkerGlobalScopePrototype
(This is different from something like Window, where there is an
intermediate WindowProperties object for named properties.)
Previously, we treated the GlobalMixin object as if it was a simple
prototype object, accidentally setting DedicatedWorkerGlobalScope's
prototype to WorkerGlobalScopePrototype. This caused the expression
self instanceof DedicatedWorkerGlobalScope
to return false inside workers.
This makes us pass many more of the "/xhr/idlharness.any.worker" WPT
tests than before, rather than failing early.
This commit is contained in:
parent
6923008a55
commit
d5948709cd
Notes:
github-actions[bot]
2024-10-12 17:22:59 +00:00
Author: https://github.com/sin-ack
Commit: d5948709cd
Pull-request: https://github.com/LadybirdBrowser/ladybird/pull/1744
4 changed files with 26 additions and 1 deletions
|
|
@ -0,0 +1,5 @@
|
|||
onmessage = function (event) {
|
||||
if (event.data === "run") {
|
||||
postMessage({ result: self instanceof DedicatedWorkerGlobalScope });
|
||||
}
|
||||
};
|
||||
Loading…
Add table
Add a link
Reference in a new issue