| Index: Source/core/paint/EllipsisBoxPainter.cpp
|
| diff --git a/Source/core/paint/EllipsisBoxPainter.cpp b/Source/core/paint/EllipsisBoxPainter.cpp
|
| index 13a4901fae1d5cb0e277236ee166f9e253a4f46f..17de42c6d0f802156a68357ade41dc240a17a782 100644
|
| --- a/Source/core/paint/EllipsisBoxPainter.cpp
|
| +++ b/Source/core/paint/EllipsisBoxPainter.cpp
|
| @@ -25,18 +25,20 @@ void EllipsisBoxPainter::paint(const PaintInfo& paintInfo, const LayoutPoint& pa
|
| void EllipsisBoxPainter::paintEllipsis(const PaintInfo& paintInfo, const LayoutPoint& paintOffset, LayoutUnit lineTop, LayoutUnit lineBottom, RenderStyle* style)
|
| {
|
| GraphicsContext* context = paintInfo.context;
|
| - const Font& font = style->font();
|
| FloatPoint boxOrigin = m_ellipsisBox.locationIncludingFlipping();
|
| boxOrigin.moveBy(FloatPoint(paintOffset));
|
| if (!m_ellipsisBox.isHorizontal())
|
| boxOrigin.move(0, -m_ellipsisBox.virtualLogicalHeight());
|
| FloatRect boxRect(boxOrigin, FloatSize(m_ellipsisBox.logicalWidth(), m_ellipsisBox.virtualLogicalHeight()));
|
|
|
| - RenderDrawingRecorder recorder(paintInfo.context, &m_ellipsisBox.renderer(), paintInfo.phase, boxRect);
|
| + RenderDrawingRecorder recorder(context, m_ellipsisBox.renderer(), paintInfo.phase, boxRect);
|
| + if (recorder.canUseCachedDrawing())
|
| + return;
|
|
|
| GraphicsContextStateSaver stateSaver(*context);
|
| if (!m_ellipsisBox.isHorizontal())
|
| context->concatCTM(TextPainter::rotation(boxRect, TextPainter::Clockwise));
|
| + const Font& font = style->font();
|
| FloatPoint textOrigin(boxOrigin.x(), boxOrigin.y() + font.fontMetrics().ascent());
|
|
|
| bool isPrinting = m_ellipsisBox.renderer().document().printing();
|
|
|