Bug 135844

Summary: Don't recurse into non-rendered subtrees when computing style
Product: WebKit Reporter: Antti Koivisto <koivisto>
Component: DOMAssignee: Nobody <webkit-unassigned>
Status: RESOLVED FIXED    
Severity: Normal CC: buildbot, commit-queue, eric.carlson, glenn, jer.noble, philipj, rniwa, sergio
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on: 135864    
Bug Blocks:    
Attachments:
Description Flags
patch
buildbot: commit-queue-
Archive of layout-test-results from webkit-ews-03 for mac-mountainlion
none
patch 2 kling: review+

Description Antti Koivisto 2014-08-12 11:00:24 PDT
We can avoid some work.
Comment 1 Antti Koivisto 2014-08-12 11:13:44 PDT
Created attachment 236455 [details]
patch
Comment 2 Build Bot 2014-08-12 12:38:35 PDT
Comment on attachment 236455 [details]
patch

Attachment 236455 [details] did not pass mac-ews (mac):
Output: http://webkit-queues.appspot.com/results/5504208803463168

New failing tests:
fast/ruby/ruby-base-merge-block-children-crash-2.html
http/tests/security/video-poster-cross-origin-crash.html
Comment 3 Build Bot 2014-08-12 12:38:37 PDT
Created attachment 236458 [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
Comment 4 Antti Koivisto 2014-08-12 13:31:31 PDT
Created attachment 236463 [details]
patch 2
Comment 5 Andreas Kling 2014-08-12 13:43:12 PDT
Comment on attachment 236463 [details]
patch 2

View in context: https://bugs.webkit.org/attachment.cgi?id=236463&action=review

r=me

> Source/WebCore/ChangeLog:11
> +        Do a simple reset of the style dirty bits and any computed style in non-renderer subtrees.

Typo, non-renderer -> non-rendered.

> Source/WebCore/style/StyleResolveTree.cpp:561
> +    for (auto& child : childrenOfType<Element>(current)) {

I suspect this could be more efficient with elementDescendants.
Comment 6 Antti Koivisto 2014-08-12 14:32:14 PDT
https://trac.webkit.org/r172494
Comment 7 WebKit Commit Bot 2014-08-12 16:09:37 PDT
Re-opened since this is blocked by bug 135864
Comment 8 Antti Koivisto 2014-08-13 03:14:27 PDT
Re-landed in https://trac.webkit.org/r172517
Comment 9 Antti Koivisto 2014-08-13 04:21:38 PDT
...and the test rebase https://trac.webkit.org/r172518