Bug 90326 - HTMLCollection should use DynamicNodeList's invalidation model
Summary: HTMLCollection should use DynamicNodeList's invalidation model
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: DOM (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Ryosuke Niwa
URL:
Keywords:
Depends on: 91046 91178
Blocks: 89919 91571
  Show dependency treegraph
 
Reported: 2012-06-29 17:29 PDT by Ryosuke Niwa
Modified: 2012-07-17 19:26 PDT (History)
13 users (show)

See Also:


Attachments
work in progress (6.28 KB, patch)
2012-06-29 17:31 PDT, Ryosuke Niwa
no flags Details | Formatted Diff | Diff
Patch (33.12 KB, patch)
2012-07-13 01:34 PDT, Ryosuke Niwa
no flags Details | Formatted Diff | Diff
Fixed builds (33.32 KB, patch)
2012-07-13 11:52 PDT, Ryosuke Niwa
andersca: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Ryosuke Niwa 2012-06-29 17:29:17 PDT
Right now, HTMLCollection gets invalidated lazily by checking DOM tree version. However, various attempts to simplify DynamicNodeList's invalidation model proved that our current invalidation model for DynamicNodeList is indeed effective. We should make HTMLCollection use the same model.
Comment 1 Ryosuke Niwa 2012-06-29 17:31:21 PDT
Created attachment 150278 [details]
work in progress

Unfortunately, we have to do more refactoring around invalidateNodeListsCacheAfterAttributeChanged to avoid invalidating node lists and html collections when attribute that had changed don't affect node lists and html collections.
Comment 2 Ryosuke Niwa 2012-07-13 01:34:31 PDT
Created attachment 152186 [details]
Patch
Comment 3 Build Bot 2012-07-13 01:52:50 PDT
Comment on attachment 152186 [details]
Patch

Attachment 152186 [details] did not pass mac-ews (mac):
Output: http://queues.webkit.org/results/13239018
Comment 4 Build Bot 2012-07-13 02:14:35 PDT
Comment on attachment 152186 [details]
Patch

Attachment 152186 [details] did not pass win-ews (win):
Output: http://queues.webkit.org/results/13230132
Comment 5 Early Warning System Bot 2012-07-13 02:29:23 PDT
Comment on attachment 152186 [details]
Patch

Attachment 152186 [details] did not pass qt-wk2-ews (qt):
Output: http://queues.webkit.org/results/13236046
Comment 6 Early Warning System Bot 2012-07-13 02:35:21 PDT
Comment on attachment 152186 [details]
Patch

Attachment 152186 [details] did not pass qt-ews (qt):
Output: http://queues.webkit.org/results/13205999
Comment 7 WebKit Review Bot 2012-07-13 02:53:54 PDT
Comment on attachment 152186 [details]
Patch

Attachment 152186 [details] did not pass chromium-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/13233060
Comment 8 Ryosuke Niwa 2012-07-13 11:52:34 PDT
Created attachment 152312 [details]
Fixed builds
Comment 9 Ryosuke Niwa 2012-07-13 12:48:45 PDT
Committed r122621: <http://trac.webkit.org/changeset/122621>