| Summary: | Attribute-dependent state is not updated for changes of certain attributes | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Product: | WebKit | Reporter: | Tyler Wilcock <tyler_w> | ||||||||
| Component: | DOM | Assignee: | Tyler Wilcock <tyler_w> | ||||||||
| Status: | RESOLVED FIXED | ||||||||||
| Severity: | Normal | CC: | cdumez, cmarcelo, esprehn+autocc, ews-watchlist, kangil.han, webkit-bug-importer | ||||||||
| Priority: | P2 | Keywords: | InRadar | ||||||||
| Version: | Other | ||||||||||
| Hardware: | Unspecified | ||||||||||
| OS: | Unspecified | ||||||||||
| Attachments: |
|
||||||||||
|
Description
Tyler Wilcock
2023-04-14 21:28:22 PDT
This was fixed for accessibility updates in https://bugs.webkit.org/show_bug.cgi?id=255433. Created attachment 465923 [details]
Patch
Queued Speedometer runs since this is a hot path. Created attachment 465924 [details]
Patch
Actually, contrary to the bug description, it seems that all of Element::attributeChanged is coded under the assumption that it will be called for every attribute change. Uploading a new patch. Created attachment 465925 [details]
Patch
(In reply to Tyler Wilcock from comment #6) > Actually, contrary to the bug description, it seems that all of > Element::attributeChanged is coded under the assumption that it will be > called for every attribute change. Uploading a new patch. No, I don’t think this is true. Subclasses will make sure to call into the base class for attributes the base class may care about (like id or class). And the subclasses won’t call into the base class for attributes it wouldn’t care about, as an optimization. This latest iteration kills this optimization and likely is way too aggressive for what you want to fix. The earlier iteration looked more correct to me. Got it, makes sense. Will revert to the previous patch. Earlier patch un-obsoleted and Speedometer queued, later patch obsoleted. This change is neutral on Speedometer. Comment on attachment 465924 [details]
Patch
r=me
Committed 263005@main (0e0b997d2763): <https://commits.webkit.org/263005@main> All reviewed patches have been landed. Closing bug and clearing flags on attachment 465924 [details]. |