| Index: third_party/WebKit/Source/core/layout/LayoutInline.cpp
|
| diff --git a/third_party/WebKit/Source/core/layout/LayoutInline.cpp b/third_party/WebKit/Source/core/layout/LayoutInline.cpp
|
| index ea9c613c8b79173161b52e40db1e856924363531..82b46000593075ce2b7720719fec4ed2b1ef7a33 100644
|
| --- a/third_party/WebKit/Source/core/layout/LayoutInline.cpp
|
| +++ b/third_party/WebKit/Source/core/layout/LayoutInline.cpp
|
| @@ -618,8 +618,18 @@ static inline void computeItemTopHeight(const LayoutInline* container,
|
| LayoutUnit* top,
|
| LayoutUnit* height) {
|
| bool firstLine = rootBox.isFirstLineStyle();
|
| - auto metrics = rootBox.getLineLayoutItem().style(firstLine)->getFontMetrics();
|
| - auto containerMetrics = container->style(firstLine)->getFontMetrics();
|
| + const SimpleFontData* fontData =
|
| + rootBox.getLineLayoutItem().style(firstLine)->font().primaryFont();
|
| + const SimpleFontData* containerFontData =
|
| + container->style(firstLine)->font().primaryFont();
|
| + DCHECK(fontData && containerFontData);
|
| + if (!fontData || !containerFontData) {
|
| + *top = LayoutUnit();
|
| + *height = LayoutUnit();
|
| + return;
|
| + }
|
| + auto metrics = fontData->getFontMetrics();
|
| + auto containerMetrics = containerFontData->getFontMetrics();
|
| *top = rootBox.logicalTop() + (metrics.ascent() - containerMetrics.ascent());
|
| *height = LayoutUnit(containerMetrics.height());
|
| }
|
| @@ -1340,7 +1350,11 @@ int LayoutInline::baselinePosition(FontBaseline baselineType,
|
| LineDirectionMode direction,
|
| LinePositionMode linePositionMode) const {
|
| ASSERT(linePositionMode == PositionOnContainingLine);
|
| - const FontMetrics& fontMetrics = style(firstLine)->getFontMetrics();
|
| + const SimpleFontData* fontData = style(firstLine)->font().primaryFont();
|
| + DCHECK(fontData);
|
| + if (!fontData)
|
| + return -1;
|
| + const FontMetrics& fontMetrics = fontData->getFontMetrics();
|
| return (fontMetrics.ascent(baselineType) +
|
| (lineHeight(firstLine, direction, linePositionMode) -
|
| fontMetrics.height()) /
|
|
|