Diff
Modified: trunk/LayoutTests/ChangeLog (186815 => 186816)
--- trunk/LayoutTests/ChangeLog 2015-07-14 21:18:22 UTC (rev 186815)
+++ trunk/LayoutTests/ChangeLog 2015-07-14 21:19:50 UTC (rev 186816)
@@ -1,3 +1,18 @@
+2015-07-14 Commit Queue <commit-qu...@webkit.org>
+
+ Unreviewed, rolling out r186809.
+ https://bugs.webkit.org/show_bug.cgi?id=146943
+
+ Caused about 190 layout test failures. (Requested by mlam_ on
+ #webkit).
+
+ Reverted changeset:
+
+ "REGRESSION (r177876): store.apple.com profile and cart icons
+ are missing"
+ https://bugs.webkit.org/show_bug.cgi?id=146894
+ http://trac.webkit.org/changeset/186809
+
2015-07-14 David Kilzer <ddkil...@apple.com>
http/tests/misc/large-js-program.php crashes in Release, times out in Debug, on Windows
Deleted: trunk/LayoutTests/fast/css/font-face-multiple-missing-glyphs-expected.html (186815 => 186816)
--- trunk/LayoutTests/fast/css/font-face-multiple-missing-glyphs-expected.html 2015-07-14 21:18:22 UTC (rev 186815)
+++ trunk/LayoutTests/fast/css/font-face-multiple-missing-glyphs-expected.html 2015-07-14 21:19:50 UTC (rev 186816)
@@ -1,7 +0,0 @@
-<!DOCTYPE html>
-<html>
-<body>
-This test makes sure we search through all font-face declarations in order to find a working font.
-<div style="font: 200px 'Heiti SC'; -webkit-line-box-contain: font;">汉</div>
-</body>
-</html>
Deleted: trunk/LayoutTests/fast/css/font-face-multiple-missing-glyphs.html (186815 => 186816)
--- trunk/LayoutTests/fast/css/font-face-multiple-missing-glyphs.html 2015-07-14 21:18:22 UTC (rev 186815)
+++ trunk/LayoutTests/fast/css/font-face-multiple-missing-glyphs.html 2015-07-14 21:19:50 UTC (rev 186816)
@@ -1,27 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-<style>
-@font-face {
- font-family: WebFont;
- /* Any font which has a smaller ascent than Heiti SC can be used here */
- src: local("Palatino-Roman");
-}
-
-@font-face {
- font-family: WebFont;
- /* This font must not be the default fallback font for U+6c49 */
- src: local("Heiti SC");
-}
-
-@font-face {
- font-family: WebFont;
- src: local("Palatino-Roman");
-}
-</style>
-</head>
-<body>
-This test makes sure we search through all font-face declarations in order to find a working font.
-<div style="font: 200px WebFont; -webkit-line-box-contain: font;">汉</div>
-</body>
-</html>
Modified: trunk/Source/WebCore/ChangeLog (186815 => 186816)
--- trunk/Source/WebCore/ChangeLog 2015-07-14 21:18:22 UTC (rev 186815)
+++ trunk/Source/WebCore/ChangeLog 2015-07-14 21:19:50 UTC (rev 186816)
@@ -1,3 +1,18 @@
+2015-07-14 Commit Queue <commit-qu...@webkit.org>
+
+ Unreviewed, rolling out r186809.
+ https://bugs.webkit.org/show_bug.cgi?id=146943
+
+ Caused about 190 layout test failures. (Requested by mlam_ on
+ #webkit).
+
+ Reverted changeset:
+
+ "REGRESSION (r177876): store.apple.com profile and cart icons
+ are missing"
+ https://bugs.webkit.org/show_bug.cgi?id=146894
+ http://trac.webkit.org/changeset/186809
+
2015-07-14 Antti Koivisto <an...@apple.com>
REGRESSION (r177876): store.apple.com profile and cart icons are missing
Modified: trunk/Source/WebCore/platform/graphics/FontCascadeFonts.cpp (186815 => 186816)
--- trunk/Source/WebCore/platform/graphics/FontCascadeFonts.cpp 2015-07-14 21:18:22 UTC (rev 186815)
+++ trunk/Source/WebCore/platform/graphics/FontCascadeFonts.cpp 2015-07-14 21:19:50 UTC (rev 186816)
@@ -295,7 +295,8 @@
auto& fontRanges = realizeFallbackRangesAt(description, fallbackIndex++);
if (fontRanges.isNull())
break;
- GlyphData data = ""
+ auto* font = fontRanges.fontForCharacter(c);
+ GlyphData data = "" ? font->glyphDataForCharacter(c) : GlyphData();
if (data.font) {
// The variantFont function should not normally return 0.
// But if it does, we will just render the capital letter big.
@@ -312,11 +313,17 @@
GlyphData FontCascadeFonts::glyphDataForNormalVariant(UChar32 c, const FontDescription& description)
{
- for (unsigned fallbackIndex = 0; ; ++fallbackIndex) {
+ const unsigned pageNumber = c / GlyphPage::size;
+
+ for (unsigned fallbackIndex = 0; true; ++fallbackIndex) {
auto& fontRanges = realizeFallbackRangesAt(description, fallbackIndex);
if (fontRanges.isNull())
break;
- GlyphData data = ""
+ auto* font = fontRanges.fontForCharacter(c);
+ auto* page = font ? font->glyphPage(pageNumber) : nullptr;
+ if (!page)
+ continue;
+ GlyphData data = ""
if (data.font) {
if (data.font->platformData().orientation() == Vertical && !data.font->isTextOrientationFallback()) {
if (!FontCascade::isCJKIdeographOrSymbol(c))
@@ -332,6 +339,7 @@
return glyphDataForCJKCharacterWithoutSyntheticItalic(c, data);
#endif
}
+
return data;
}
}
Modified: trunk/Source/WebCore/platform/graphics/FontRanges.cpp (186815 => 186816)
--- trunk/Source/WebCore/platform/graphics/FontRanges.cpp 2015-07-14 21:18:22 UTC (rev 186815)
+++ trunk/Source/WebCore/platform/graphics/FontRanges.cpp 2015-07-14 21:19:50 UTC (rev 186816)
@@ -46,23 +46,15 @@
{
}
-GlyphData FontRanges::glyphDataForCharacter(UChar32 character) const
+const Font* FontRanges::fontForCharacter(UChar32 c) const
{
for (auto& range : m_ranges) {
- if (range.from() <= character && character <= range.to()) {
- auto glyphData = range.font().glyphDataForCharacter(character);
- if (glyphData.glyph)
- return glyphData;
- }
+ if (range.from() <= c && c <= range.to())
+ return &range.font();
}
- return GlyphData();
+ return nullptr;
}
-const Font* FontRanges::fontForCharacter(UChar32 character) const
-{
- return glyphDataForCharacter(character).font;
-}
-
const Font& FontRanges::fontForFirstRange() const
{
return m_ranges[0].font();
Modified: trunk/Source/WebCore/platform/graphics/FontRanges.h (186815 => 186816)
--- trunk/Source/WebCore/platform/graphics/FontRanges.h 2015-07-14 21:18:22 UTC (rev 186815)
+++ trunk/Source/WebCore/platform/graphics/FontRanges.h 2015-07-14 21:19:50 UTC (rev 186816)
@@ -62,7 +62,6 @@
unsigned size() const { return m_ranges.size(); }
const Range& rangeAt(unsigned i) const { return m_ranges[i]; }
- GlyphData glyphDataForCharacter(UChar32) const;
WEBCORE_EXPORT const Font* fontForCharacter(UChar32) const;
WEBCORE_EXPORT const Font& fontForFirstRange() const;
bool isLoading() const;
Modified: trunk/Source/WebCore/rendering/SimpleLineLayout.cpp (186815 => 186816)
--- trunk/Source/WebCore/rendering/SimpleLineLayout.cpp 2015-07-14 21:18:22 UTC (rev 186815)
+++ trunk/Source/WebCore/rendering/SimpleLineLayout.cpp 2015-07-14 21:19:50 UTC (rev 186816)
@@ -82,17 +82,16 @@
}
return true;
}
-/*
+
static bool canUseForText(const RenderText& textRenderer, const Font& font)
{
if (textRenderer.is8Bit())
return canUseForText(textRenderer.characters8(), textRenderer.textLength(), font);
return canUseForText(textRenderer.characters16(), textRenderer.textLength(), font);
}
-*/
-bool canUseFor(const RenderBlockFlow&)
+
+bool canUseFor(const RenderBlockFlow& flow)
{
- return false; /*
if (!flow.frame().settings().simpleLineLayoutEnabled())
return false;
if (!flow.firstChild())
@@ -212,7 +211,6 @@
return false;
}
return true;
- */
}
static float computeLineLeft(ETextAlign textAlign, float availableWidth, float committedWidth, float logicalLeftOffset)