RESOLVED FIXED Bug 130090
Optimize hasTagName when called on an HTMLElement
https://bugs.webkit.org/show_bug.cgi?id=130090
Summary Optimize hasTagName when called on an HTMLElement
Darin Adler
Reported 2014-03-11 07:49:59 PDT
Optimize hasTagName when called on an HTMLElement
Attachments
Patch (112.95 KB, patch)
2014-03-11 19:57 PDT, Darin Adler
no flags
Patch (119.33 KB, patch)
2014-03-14 05:03 PDT, Csaba Osztrogonác
no flags
Archive of layout-test-results from webkit-ews-12 for mac-mountainlion-wk2 (550.54 KB, application/zip)
2014-03-14 06:25 PDT, Build Bot
no flags
Patch (116.49 KB, patch)
2014-03-14 06:40 PDT, Frédéric Wang (:fredw)
no flags
Archive of layout-test-results from webkit-ews-06 for mac-mountainlion (562.95 KB, application/zip)
2014-03-14 07:01 PDT, Build Bot
no flags
Archive of layout-test-results from webkit-ews-09 for mac-mountainlion-wk2 (650.32 KB, application/zip)
2014-03-14 07:13 PDT, Build Bot
no flags
Archive of layout-test-results from webkit-ews-01 for mac-mountainlion (616.75 KB, application/zip)
2014-03-14 07:51 PDT, Build Bot
no flags
Archive of layout-test-results from webkit-ews-15 for mac-mountainlion-wk2 (550.18 KB, application/zip)
2014-03-14 07:58 PDT, Build Bot
no flags
Archive of layout-test-results from webkit-ews-02 for mac-mountainlion (561.89 KB, application/zip)
2014-03-14 08:38 PDT, Build Bot
no flags
Archive of layout-test-results from webkit-ews-14 for mac-mountainlion-wk2 (541.65 KB, application/zip)
2014-03-14 08:49 PDT, Build Bot
no flags
Archive of layout-test-results from webkit-ews-03 for mac-mountainlion (564.58 KB, application/zip)
2014-03-14 09:47 PDT, Build Bot
no flags
Patch (118.34 KB, patch)
2014-03-15 18:26 PDT, Darin Adler
no flags
Patch (121.97 KB, patch)
2014-03-15 23:01 PDT, Darin Adler
no flags
Patch (123.75 KB, patch)
2014-03-16 08:36 PDT, Darin Adler
no flags
Darin Adler
Comment 1 2014-03-11 19:57:50 PDT
Early Warning System Bot
Comment 2 2014-03-13 02:47:43 PDT
Attachment 226467 [details] did not pass style-queue: ERROR: Source/WebCore/svg/SVGUseElement.cpp:545: Multi line control clauses should use braces. [whitespace/braces] [4] Total errors found: 1 in 49 files If any of these errors are false positives, please file a bug against check-webkit-style.
Antti Koivisto
Comment 3 2014-03-13 03:24:18 PDT
Comment on attachment 226467 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=226467&action=review Nice! I don't think this is overengineered at all. Looks like there are some bad hasLocalName calls left at least in TextIterator.cpp. > Source/WebCore/accessibility/AccessibilityRenderObject.cpp:2429 > + for (RenderElement* parent = m_renderer->parent(); parent; parent = parent->parent()) { This could use for (auto& ancestor : ancestorsOfType<RenderElement>(*m_renderer)) > Source/WebCore/xml/parser/XMLDocumentParser.cpp:278 > - if (contextElement && (contextElement->hasLocalName(HTMLNames::scriptTag) || contextElement->hasLocalName(HTMLNames::styleTag))) { > + if (contextElement && (contextElement->hasLocalName(HTMLNames::scriptTag.localName()) || contextElement->hasLocalName(HTMLNames::styleTag.localName()))) { Wonder if this is a bug or if the "hack" requires ignoring the namespace.
Darin Adler
Comment 4 2014-03-13 10:46:04 PDT
Benjamin Poulain
Comment 5 2014-03-13 12:48:18 PDT
Csaba Osztrogonác
Comment 6 2014-03-13 13:21:33 PDT
It broke the whole world. Are you going to fix it?
Antti Koivisto
Comment 7 2014-03-13 14:58:48 PDT
Some more places probably need to include HTMLElement.h as that is where Node::hasTagName(const HTMLQualifiedName& name) is now defined.
Csaba Osztrogonác
Comment 8 2014-03-13 14:59:01 PDT
I tried to ping you Darin, but you weren't on #webkit. It broke the Windows build: http://build.webkit.org/builders/Apple%20Win%20Release%20%28Build%29/builds/58986 And the EFL/GTK build: http://build.webkit.org/builders/EFL%20Linux%2064-bit%20Release%20WK1/builds/5427 EWS bots noticed this breakage before landing. :( I willingly help you to fix it, but not now, but it's 11 pm here, so I rolled it out by r165568. I'm going to check the linux build tomorrow mornig. Or feel free to reland if you find it before me.
Csaba Osztrogonác
Comment 9 2014-03-13 15:02:31 PDT
Reopen not to forget to fix it.
Darin Adler
Comment 10 2014-03-13 15:31:35 PDT
Thanks for rolling out. I am surprised by these failures and I will look into them when I have some time.
Csaba Osztrogonác
Comment 11 2014-03-14 05:03:43 PDT
Created attachment 226687 [details] Patch fixed patch for landing
Build Bot
Comment 12 2014-03-14 06:25:03 PDT
Comment on attachment 226687 [details] Patch Attachment 226687 [details] did not pass mac-wk2-ews (mac-wk2): Output: http://webkit-queues.appspot.com/results/5004034888957952 New failing tests: accessibility/canvas-accessibilitynodeobject.html fast/events/tabindex-focus-blur-all.html accessibility/accessibility-node-reparent.html accessibility/accessibility-node-memory-management.html
Build Bot
Comment 13 2014-03-14 06:25:07 PDT
Created attachment 226699 [details] Archive of layout-test-results from webkit-ews-12 for mac-mountainlion-wk2 The attached test failures were seen while running run-webkit-tests on the mac-wk2-ews. Bot: webkit-ews-12 Port: mac-mountainlion-wk2 Platform: Mac OS X 10.8.5
Frédéric Wang (:fredw)
Comment 14 2014-03-14 06:40:37 PDT
Created attachment 226701 [details] Patch Adding headers in PasteboardGtk.cpp to try to fix the GTK builds.
Csaba Osztrogonác
Comment 15 2014-03-14 06:48:50 PDT
Now only the Windows build is broken and there are some layout tests regression.
Build Bot
Comment 16 2014-03-14 07:01:10 PDT
Comment on attachment 226687 [details] Patch Attachment 226687 [details] did not pass mac-ews (mac): Output: http://webkit-queues.appspot.com/results/6051732031275008 New failing tests: accessibility/canvas-accessibilitynodeobject.html fast/events/tabindex-focus-blur-all.html accessibility/accessibility-node-reparent.html accessibility/accessibility-node-memory-management.html
Build Bot
Comment 17 2014-03-14 07:01:15 PDT
Created attachment 226707 [details] Archive of layout-test-results from webkit-ews-06 for mac-mountainlion The attached test failures were seen while running run-webkit-tests on the mac-ews. Bot: webkit-ews-06 Port: mac-mountainlion Platform: Mac OS X 10.8.5
Build Bot
Comment 18 2014-03-14 07:13:44 PDT
Comment on attachment 226687 [details] Patch Attachment 226687 [details] did not pass mac-wk2-ews (mac-wk2): Output: http://webkit-queues.appspot.com/results/5353353169076224 New failing tests: accessibility/canvas-accessibilitynodeobject.html fast/events/tabindex-focus-blur-all.html accessibility/accessibility-node-reparent.html accessibility/accessibility-node-memory-management.html
Build Bot
Comment 19 2014-03-14 07:13:49 PDT
Created attachment 226709 [details] Archive of layout-test-results from webkit-ews-09 for mac-mountainlion-wk2 The attached test failures were seen while running run-webkit-tests on the mac-wk2-ews. Bot: webkit-ews-09 Port: mac-mountainlion-wk2 Platform: Mac OS X 10.8.5
Build Bot
Comment 20 2014-03-14 07:51:12 PDT
Comment on attachment 226687 [details] Patch Attachment 226687 [details] did not pass mac-ews (mac): Output: http://webkit-queues.appspot.com/results/5780163396632576 New failing tests: accessibility/canvas-accessibilitynodeobject.html fast/events/tabindex-focus-blur-all.html accessibility/accessibility-node-reparent.html accessibility/accessibility-node-memory-management.html
Build Bot
Comment 21 2014-03-14 07:51:15 PDT
Created attachment 226714 [details] Archive of layout-test-results from webkit-ews-01 for mac-mountainlion The attached test failures were seen while running run-webkit-tests on the mac-ews. Bot: webkit-ews-01 Port: mac-mountainlion Platform: Mac OS X 10.8.5
Build Bot
Comment 22 2014-03-14 07:58:32 PDT
Comment on attachment 226701 [details] Patch Attachment 226701 [details] did not pass mac-wk2-ews (mac-wk2): Output: http://webkit-queues.appspot.com/results/5943138078162944 New failing tests: accessibility/canvas-accessibilitynodeobject.html fast/events/tabindex-focus-blur-all.html accessibility/accessibility-node-reparent.html accessibility/accessibility-node-memory-management.html
Build Bot
Comment 23 2014-03-14 07:58:35 PDT
Created attachment 226715 [details] Archive of layout-test-results from webkit-ews-15 for mac-mountainlion-wk2 The attached test failures were seen while running run-webkit-tests on the mac-wk2-ews. Bot: webkit-ews-15 Port: mac-mountainlion-wk2 Platform: Mac OS X 10.8.5
Build Bot
Comment 24 2014-03-14 08:38:28 PDT
Comment on attachment 226701 [details] Patch Attachment 226701 [details] did not pass mac-ews (mac): Output: http://webkit-queues.appspot.com/results/4558354722586624 New failing tests: accessibility/canvas-accessibilitynodeobject.html fast/events/tabindex-focus-blur-all.html accessibility/accessibility-node-reparent.html accessibility/accessibility-node-memory-management.html
Build Bot
Comment 25 2014-03-14 08:38:32 PDT
Created attachment 226719 [details] Archive of layout-test-results from webkit-ews-02 for mac-mountainlion The attached test failures were seen while running run-webkit-tests on the mac-ews. Bot: webkit-ews-02 Port: mac-mountainlion Platform: Mac OS X 10.8.5
Build Bot
Comment 26 2014-03-14 08:49:14 PDT
Comment on attachment 226701 [details] Patch Attachment 226701 [details] did not pass mac-wk2-ews (mac-wk2): Output: http://webkit-queues.appspot.com/results/4529045865758720 New failing tests: accessibility/canvas-accessibilitynodeobject.html fast/events/tabindex-focus-blur-all.html accessibility/accessibility-node-reparent.html accessibility/accessibility-node-memory-management.html
Build Bot
Comment 27 2014-03-14 08:49:18 PDT
Created attachment 226720 [details] Archive of layout-test-results from webkit-ews-14 for mac-mountainlion-wk2 The attached test failures were seen while running run-webkit-tests on the mac-wk2-ews. Bot: webkit-ews-14 Port: mac-mountainlion-wk2 Platform: Mac OS X 10.8.5
Build Bot
Comment 28 2014-03-14 09:47:04 PDT
Comment on attachment 226701 [details] Patch Attachment 226701 [details] did not pass mac-ews (mac): Output: http://webkit-queues.appspot.com/results/6154244310695936 New failing tests: accessibility/canvas-accessibilitynodeobject.html fast/events/tabindex-focus-blur-all.html accessibility/accessibility-node-reparent.html accessibility/accessibility-node-memory-management.html
Build Bot
Comment 29 2014-03-14 09:47:08 PDT
Created attachment 226725 [details] Archive of layout-test-results from webkit-ews-03 for mac-mountainlion The attached test failures were seen while running run-webkit-tests on the mac-ews. Bot: webkit-ews-03 Port: mac-mountainlion Platform: Mac OS X 10.8.5
Darin Adler
Comment 30 2014-03-15 14:17:22 PDT
OK, I’ve made fixes for the Windows and GTK compilation failures in my local tree. I am not sure those are the same changes that Ossy and Frédéric made -- I didn’t see their patches yet. Now I am looking into the test failures.
Darin Adler
Comment 31 2014-03-15 18:25:59 PDT
Test failures were due to me using ancestorsOfType instead of lineageOfType in Element::isFocusable.
Darin Adler
Comment 32 2014-03-15 18:26:58 PDT
Darin Adler
Comment 33 2014-03-15 23:01:43 PDT
Darin Adler
Comment 34 2014-03-15 23:09:11 PDT
There was another Windows build failure related to the WebKit exp file. Uploading a new patch that tries to fix that.
Darin Adler
Comment 35 2014-03-16 08:36:09 PDT
Darin Adler
Comment 36 2014-03-16 09:39:25 PDT
Lucas Forschler
Comment 37 2019-02-06 09:04:08 PST
Mass moving XML DOM bugs to the "DOM" Component.
Note You need to log in before you can comment on or make changes to this bug.