| Index: third_party/WebKit/Source/core/layout/LayoutBlock.cpp
|
| diff --git a/third_party/WebKit/Source/core/layout/LayoutBlock.cpp b/third_party/WebKit/Source/core/layout/LayoutBlock.cpp
|
| index 533e7795aa74dc62a7986affcf706dca4ab6783c..9ebb1c9a8e12d4ce2a640bfba542f652ea575bb7 100644
|
| --- a/third_party/WebKit/Source/core/layout/LayoutBlock.cpp
|
| +++ b/third_party/WebKit/Source/core/layout/LayoutBlock.cpp
|
| @@ -1690,7 +1690,12 @@ int LayoutBlock::baselinePosition(FontBaseline baselineType,
|
| // Note that inline-block counts as replaced here.
|
| ASSERT(linePositionMode == PositionOfInteriorLineBoxes);
|
|
|
| - 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()) /
|
| @@ -1759,8 +1764,9 @@ int LayoutBlock::inlineBlockBaseline(LineDirectionMode lineDirection) const {
|
| .toInt(); // Translate to our coordinate space.
|
| }
|
| }
|
| - if (!haveNormalFlowChild && hasLineIfEmpty()) {
|
| - const FontMetrics& fontMetrics = firstLineStyle()->getFontMetrics();
|
| + const SimpleFontData* fontData = firstLineStyle()->font().primaryFont();
|
| + if (fontData && !haveNormalFlowChild && hasLineIfEmpty()) {
|
| + const FontMetrics& fontMetrics = fontData->getFontMetrics();
|
| return (fontMetrics.ascent() +
|
| (lineHeight(true, lineDirection, PositionOfInteriorLineBoxes) -
|
| fontMetrics.height()) /
|
|
|