Bug 157784

Summary: Update RenderBlockFlow::adjustComputedFontSizes() to use RenderObjectTraversal
Product: WebKit Reporter: Chris Dumez <cdumez>
Component: Layout and RenderingAssignee: Chris Dumez <cdumez>
Status: RESOLVED FIXED    
Severity: Normal CC: buildbot, commit-queue, esprehn+autocc, glenn, koivisto, kondapallykalyan, rniwa, simon.fraser, zalan
Priority: P2    
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on: 157785    
Bug Blocks:    
Attachments:
Description Flags
Patch
none
Patch
none
Archive of layout-test-results from ews101 for mac-yosemite
none
Archive of layout-test-results from ews112 for mac-yosemite
none
Archive of layout-test-results from ews107 for mac-yosemite-wk2
none
Patch
none
Patch
none
Patch none

Description Chris Dumez 2016-05-16 20:43:20 PDT
Clean up / optimize RenderBlockFlow::adjustComputedFontSizes().
Comment 1 Chris Dumez 2016-05-16 20:51:40 PDT
Created attachment 279094 [details]
Patch
Comment 2 zalan 2016-05-16 20:54:13 PDT
Do you mind decoupling the iterator from the optimization? -I wouldn't want to rollout the iterator, in case the optimization causes regression.
Comment 3 Chris Dumez 2016-05-16 20:57:35 PDT
(In reply to comment #2)
> Do you mind decoupling the iterator from the optimization? -I wouldn't want
> to rollout the iterator, in case the optimization causes regression.

Hmm, so you'd want me to land the RenderDescendantIterator first without any call site? The change to RenderBlockFlow::adjustComputedFontSizes() is pretty trivial with the iterator.
Comment 4 Chris Dumez 2016-05-16 21:03:22 PDT
(In reply to comment #2)
> Do you mind decoupling the iterator from the optimization? -I wouldn't want
> to rollout the iterator, in case the optimization causes regression.

Done in https://bugs.webkit.org/show_bug.cgi?id=157785. I will rebaseline this patch when the other when lands.
Comment 5 Chris Dumez 2016-05-16 21:12:00 PDT
Created attachment 279099 [details]
Patch
Comment 6 Build Bot 2016-05-16 22:14:50 PDT
Comment on attachment 279099 [details]
Patch

Attachment 279099 [details] did not pass mac-ews (mac):
Output: http://webkit-queues.webkit.org/results/1334593

New failing tests:
fast/text-autosizing/ios/lists.html
Comment 7 Build Bot 2016-05-16 22:14:54 PDT
Created attachment 279103 [details]
Archive of layout-test-results from ews101 for mac-yosemite

The attached test failures were seen while running run-webkit-tests on the mac-ews.
Bot: ews101  Port: mac-yosemite  Platform: Mac OS X 10.10.5
Comment 8 Build Bot 2016-05-16 22:14:56 PDT
Comment on attachment 279099 [details]
Patch

Attachment 279099 [details] did not pass mac-debug-ews (mac):
Output: http://webkit-queues.webkit.org/results/1334550

New failing tests:
fast/text-autosizing/ios/lists.html
Comment 9 Build Bot 2016-05-16 22:15:00 PDT
Created attachment 279104 [details]
Archive of layout-test-results from ews112 for mac-yosemite

The attached test failures were seen while running run-webkit-tests on the mac-debug-ews.
Bot: ews112  Port: mac-yosemite  Platform: Mac OS X 10.10.5
Comment 10 Chris Dumez 2016-05-16 22:17:24 PDT
Comment on attachment 279099 [details]
Patch

Looks like this broke something. I'll take a look tomorrow.
Comment 11 Simon Fraser (smfr) 2016-05-16 22:51:23 PDT
It's a good thing I enabled autosizing on Mac for testing and landed tests.
Comment 12 Build Bot 2016-05-16 22:57:34 PDT
Comment on attachment 279099 [details]
Patch

Attachment 279099 [details] did not pass mac-wk2-ews (mac-wk2):
Output: http://webkit-queues.webkit.org/results/1334752

New failing tests:
fast/text-autosizing/ios/lists.html
Comment 13 Build Bot 2016-05-16 22:57:38 PDT
Created attachment 279105 [details]
Archive of layout-test-results from ews107 for mac-yosemite-wk2

The attached test failures were seen while running run-webkit-tests on the mac-wk2-ews.
Bot: ews107  Port: mac-yosemite-wk2  Platform: Mac OS X 10.10.5
Comment 14 Chris Dumez 2016-05-17 07:25:30 PDT
(In reply to comment #11)
> It's a good thing I enabled autosizing on Mac for testing and landed tests.

Definitely:)
Comment 15 Chris Dumez 2016-05-17 12:26:43 PDT
Created attachment 279147 [details]
Patch
Comment 16 Chris Dumez 2016-05-17 12:27:21 PDT
Created attachment 279148 [details]
Patch
Comment 17 Chris Dumez 2016-05-17 12:29:10 PDT
Comment on attachment 279148 [details]
Patch

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

> Source/WebCore/rendering/RenderBlockFlow.cpp:3792
> +            descendant = RenderObjectTraversal::nextSkippingChildren(*descendant, this);

As it turns out, the previous implementation was skipping children in this case, which is why the previous patch failed some tests.

> Source/WebCore/rendering/RenderBlockFlow.cpp:3819
> +        descendant = RenderObjectTraversal::nextSkippingChildren(text, this);

Here, it is safe to call nextSkippingChildren() instead of next() because RenderText cannot have children.
Comment 18 WebKit Commit Bot 2016-05-19 10:41:15 PDT
Comment on attachment 279148 [details]
Patch

Rejecting attachment 279148 [details] from commit-queue.

Failed to run "['/Volumes/Data/EWS/WebKit/Tools/Scripts/webkit-patch', '--status-host=webkit-queues.webkit.org', '--bot-id=webkit-cq-02', 'apply-attachment', '--no-update', '--non-interactive', 279148, '--port=mac']" exit_code: 2 cwd: /Volumes/Data/EWS/WebKit

Last 500 characters of output:
f 3 hunks FAILED -- saving rejects to file Source/WebCore/rendering/RenderBlockFlow.cpp.rej
patching file Source/WebCore/rendering/RenderIterator.h
patching file Source/WebCore/rendering/RenderObject.cpp
Hunk #1 succeeded at 298 (offset 4 lines).
Hunk #2 succeeded at 347 (offset 4 lines).
patching file Source/WebCore/rendering/RenderObject.h

Failed to run "[u'/Volumes/Data/EWS/WebKit/Tools/Scripts/svn-apply', '--force', '--reviewer', u'Zalan Bujtas']" exit_code: 1 cwd: /Volumes/Data/EWS/WebKit

Full output: http://webkit-queues.webkit.org/results/1349029
Comment 19 Chris Dumez 2016-05-19 11:38:27 PDT
Created attachment 279406 [details]
Patch
Comment 20 WebKit Commit Bot 2016-05-19 12:08:41 PDT
Comment on attachment 279406 [details]
Patch

Clearing flags on attachment: 279406

Committed r201174: <http://trac.webkit.org/changeset/201174>
Comment 21 WebKit Commit Bot 2016-05-19 12:08:47 PDT
All reviewed patches have been landed.  Closing bug.