| Summary: | appendChild shouldn't invalidate LiveNodeLists and HTMLCollections if they don't have valid caches | ||
|---|---|---|---|
| Product: | WebKit | Reporter: | Ryosuke Niwa <rniwa> |
| Component: | DOM | Assignee: | Ryosuke Niwa <rniwa> |
| Status: | RESOLVED FIXED | ||
| Severity: | Normal | CC: | barraclough, benjamin, buildbot, commit-queue, kling, koivisto, rniwa, webkit-bug-importer |
| Priority: | P2 | ||
| Version: | 528+ (Nightly build) | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
| Attachments: | |||
|
Description
Ryosuke Niwa
2014-03-04 21:43:45 PST
Created attachment 225856 [details]
Fixes the bug
A/B test result: http://dromaeo.com/?id=218031,218032 Looks like a 1% progression. Comment on attachment 225856 [details] Fixes the bug Attachment 225856 [details] did not pass mac-wk2-ews (mac-wk2): Output: http://webkit-queues.appspot.com/results/5980174520680448 New failing tests: dom/html/level2/html/HTMLIsIndexElement02.html Created attachment 225862 [details]
Archive of layout-test-results from webkit-ews-11 for mac-mountainlion-wk2
The attached test failures were seen while running run-webkit-tests on the mac-wk2-ews.
Bot: webkit-ews-11 Port: mac-mountainlion-wk2 Platform: Mac OS X 10.8.5
Comment on attachment 225856 [details] Fixes the bug Attachment 225856 [details] did not pass mac-ews (mac): Output: http://webkit-queues.appspot.com/results/5656540950298624 New failing tests: dom/html/level2/html/HTMLIsIndexElement02.html Created attachment 225864 [details]
Archive of layout-test-results from webkit-ews-05 for mac-mountainlion
The attached test failures were seen while running run-webkit-tests on the mac-ews.
Bot: webkit-ews-05 Port: mac-mountainlion Platform: Mac OS X 10.8.5
Comment on attachment 225856 [details] Fixes the bug Attachment 225856 [details] did not pass mac-ews (mac): Output: http://webkit-queues.appspot.com/results/5973414678364160 New failing tests: dom/html/level2/html/HTMLIsIndexElement02.html Created attachment 225867 [details]
Archive of layout-test-results from webkit-ews-07 for mac-mountainlion
The attached test failures were seen while running run-webkit-tests on the mac-ews.
Bot: webkit-ews-07 Port: mac-mountainlion Platform: Mac OS X 10.8.5
Comment on attachment 225856 [details] Fixes the bug View in context: https://bugs.webkit.org/attachment.cgi?id=225856&action=review > Source/WebCore/dom/CollectionIndexCache.h:199 > - if (index && m_currentNode) { > + if (index) { Oops, this erroneous change caused a crash in dom/html/level2/html/HTMLIsIndexElement02.html Created attachment 225868 [details]
Reverted the erronous change
Comment on attachment 225868 [details] Reverted the erronous change View in context: https://bugs.webkit.org/attachment.cgi?id=225868&action=review Good idea. r=me > Source/WebCore/dom/Node.cpp:728 > + HashSet<LiveNodeList*> liveNodeLists; > + liveNodeLists.swap(m_listsInvalidatedAtDocument); I'd write this with move semantics: HashSet<LiveNodeList*> liveNodeLists = std::move(m_listsInvalidatedAtDocument); > Source/WebCore/dom/Node.cpp:733 > + HashSet<HTMLCollection*> collectionLists; > + collectionLists.swap(m_collectionsInvalidatedAtDocument); Same here. Created attachment 225871 [details]
Patch for landing
Comment on attachment 225871 [details] Patch for landing Clearing flags on attachment: 225871 Committed r165103: <http://trac.webkit.org/changeset/165103> All reviewed patches have been landed. Closing bug. |