|
Merge 124295 - Float imprecision causes incorrect wrapping in LineLayout with subpixel layout
https://bugs.webkit.org/show_bug.cgi?id=92778
Reviewed by Eric Seidel.
Source/WebCore:
Due to float imprecision an incorrect wrapping decision is made in
certain cases where the values being compare are close but not exactly
the same. This can happen as the size of blocks is represented in layout
units while line layout uses floats.
Test: fast/sub-pixel/inline-block-should-not-wrap.html
* rendering/RenderBlockLineLayout.cpp:
(WebCore::LineWidth::fitsOnLine):
Use LayoutUnit::epsilon when comparing values as that is the maximum
precision we support.
LayoutTests:
Add test ensuring that an inline block isn't wrapped incorrectly.
* fast/sub-pixel/inline-block-should-not-wrap-expected.html: Added.
* fast/sub-pixel/inline-block-should-not-wrap.html: Added.
* platform/mac-lion/Skipped:
* platform/mac-snowleopard/Skipped:
* platform/mac-wk2/Skipped:
* platform/mac/Skipped:
* platform/qt-4.8/Skipped:
* platform/qt/Skipped:
* platform/win-wk2/Skipped:
* platform/win-xp/Skipped:
* platform/win/Skipped:
* platform/wincairo/Skipped:
* platform/wk2/Skipped:
TBR=eae@chromium.org
Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=124502
|
Unified diffs |
Side-by-side diffs |
Delta from patch set |
Stats (+14 lines, --2 lines) |
Patch |
|
A + |
LayoutTests/fast/sub-pixel/inline-block-should-not-wrap.html
|
View
|
|
0 chunks |
+-1 lines, --1 lines |
0 comments
|
Download
|
|
A + |
LayoutTests/fast/sub-pixel/inline-block-should-not-wrap-expected.html
|
View
|
|
0 chunks |
+-1 lines, --1 lines |
0 comments
|
Download
|
|
M |
LayoutTests/platform/mac-lion/Skipped
|
View
|
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
|
M |
LayoutTests/platform/mac-snowleopard/Skipped
|
View
|
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
|
M |
LayoutTests/platform/mac-wk2/Skipped
|
View
|
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
|
M |
LayoutTests/platform/mac/Skipped
|
View
|
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
|
M |
LayoutTests/platform/qt-4.8/Skipped
|
View
|
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
|
M |
LayoutTests/platform/qt/Skipped
|
View
|
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
|
M |
LayoutTests/platform/win-wk2/Skipped
|
View
|
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
|
M |
LayoutTests/platform/win-xp/Skipped
|
View
|
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
|
M |
LayoutTests/platform/win/Skipped
|
View
|
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
|
M |
LayoutTests/platform/wincairo/Skipped
|
View
|
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
|
M |
LayoutTests/platform/wk2/Skipped
|
View
|
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
|
M |
Source/WebCore/rendering/RenderBlockLineLayout.cpp
|
View
|
|
1 chunk |
+5 lines, -0 lines |
0 comments
|
Download
|
Total messages: 1 (0 generated)
|