mirror of
https://github.com/LadybirdBrowser/ladybird
synced 2026-05-01 03:57:15 +02:00
When inheriting custom-property data from a parent element, we were copying the parent's full CustomPropertyData regardless of whether each property was registered with `inherits: false`. That caused non-inheriting registered properties to leak from the parent, contrary to the @property spec. Wrap the parent-side lookup so we strip any custom property whose registration says it should not inherit, and only build a fresh CustomPropertyData when at least one property was actually filtered. Key the filtered view's cache on both the destination document's identity and its custom-property registration generation. The generation counter is local to each document, so a subtree adopted into another document (or queried via getComputedStyle from another window) could otherwise pick up a cached view computed under an unrelated registration set and silently skip non-inheriting filtering in the new document.
10 lines
289 B
Plaintext
10 lines
289 B
Plaintext
Harness status: OK
|
|
|
|
Found 3 tests
|
|
|
|
2 Pass
|
|
1 Fail
|
|
Pass inherit() invalidates when values changes on parent element, inherited
|
|
Fail inherit() invalidates when values changes on parent element, inherited, deeper
|
|
Pass inherit() invalidates when values changes on parent element, non-inherited
|