Bug 142544 - Optimize offsetWidth and offsetHeight to not necessarily do a layout
Summary: Optimize offsetWidth and offsetHeight to not necessarily do a layout
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Layout and Rendering (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Dave Hyatt
URL:
Keywords: InRadar
Depends on: 144873
Blocks:
  Show dependency treegraph
 
Reported: 2015-03-10 14:17 PDT by Dave Hyatt
Modified: 2015-05-11 10:56 PDT (History)
11 users (show)

See Also:


Attachments
Patch (7.62 KB, patch)
2015-03-10 14:27 PDT, Dave Hyatt
buildbot: commit-queue-
Details | Formatted Diff | Diff
Archive of layout-test-results from ews104 for mac-mavericks-wk2 (861.94 KB, application/zip)
2015-03-10 16:14 PDT, Build Bot
no flags Details
Try this (8.22 KB, patch)
2015-03-10 17:03 PDT, Dave Hyatt
no flags Details | Formatted Diff | Diff
Patch (9.88 KB, patch)
2015-03-11 10:17 PDT, Dave Hyatt
bdakin: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Dave Hyatt 2015-03-10 14:17:46 PDT
Optimize offsetWidth and offsetHeight to not necessarily do a layout.
Comment 1 Dave Hyatt 2015-03-10 14:27:07 PDT
Created attachment 248358 [details]
Patch
Comment 2 WebKit Commit Bot 2015-03-10 14:29:03 PDT
Attachment 248358 [details] did not pass style-queue:


ERROR: Source/WebCore/dom/Document.cpp:1952:  Boolean expressions that span multiple lines should have their operators on the left side of the line instead of the right side.  [whitespace/operators] [4]
ERROR: Source/WebCore/dom/Document.cpp:1952:  Multi line control clauses should use braces.  [whitespace/braces] [4]
Total errors found: 2 in 3 files


If any of these errors are false positives, please file a bug against check-webkit-style.
Comment 3 Build Bot 2015-03-10 16:14:53 PDT
Comment on attachment 248358 [details]
Patch

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

New failing tests:
fast/images/repaint-subrect-grid.html
Comment 4 Build Bot 2015-03-10 16:14:57 PDT
Created attachment 248368 [details]
Archive of layout-test-results from ews104 for mac-mavericks-wk2

The attached test failures were seen while running run-webkit-tests on the mac-wk2-ews.
Bot: ews104  Port: mac-mavericks-wk2  Platform: Mac OS X 10.9.5
Comment 5 Dave Hyatt 2015-03-10 17:03:06 PDT
Created attachment 248370 [details]
Try this
Comment 6 WebKit Commit Bot 2015-03-10 17:05:20 PDT
Attachment 248370 [details] did not pass style-queue:


ERROR: Source/WebCore/dom/Document.cpp:1952:  Boolean expressions that span multiple lines should have their operators on the left side of the line instead of the right side.  [whitespace/operators] [4]
ERROR: Source/WebCore/dom/Document.cpp:1952:  Multi line control clauses should use braces.  [whitespace/braces] [4]
Total errors found: 2 in 4 files


If any of these errors are false positives, please file a bug against check-webkit-style.
Comment 7 Dave Hyatt 2015-03-11 10:17:48 PDT
Created attachment 248429 [details]
Patch
Comment 8 WebKit Commit Bot 2015-03-11 10:21:28 PDT
Attachment 248429 [details] did not pass style-queue:


ERROR: Source/WebCore/dom/Document.cpp:1952:  Boolean expressions that span multiple lines should have their operators on the left side of the line instead of the right side.  [whitespace/operators] [4]
ERROR: Source/WebCore/dom/Document.cpp:1952:  Multi line control clauses should use braces.  [whitespace/braces] [4]
Total errors found: 2 in 6 files


If any of these errors are false positives, please file a bug against check-webkit-style.
Comment 9 Dave Hyatt 2015-03-11 11:14:23 PDT
Landed in r181396.
Comment 10 Radar WebKit Bug Importer 2015-03-13 17:05:50 PDT
<rdar://problem/20161403>
Comment 11 Simon Fraser (smfr) 2015-03-18 18:03:43 PDT
rdar://problem/19534337
Comment 12 Chris Dumez 2015-05-11 10:51:34 PDT
Comment on attachment 248429 [details]
Patch

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

> Source/WebCore/dom/Document.cpp:1931
> +    bool checkingLogicalHeight = ((dimensionsCheck & HeightDimensionsCheck) && !isVertical) || ((dimensionsCheck & WidthDimensionsCheck) && !isVertical);

Is this really correct? I would have expected the second check to use "&& isVectical" instead of "&& !isVectical".