Index: Source/core/layout/LayoutBlock.cpp |
diff --git a/Source/core/layout/LayoutBlock.cpp b/Source/core/layout/LayoutBlock.cpp |
index 0a7b15c3386cf2a35d3001843b9cbf0154b30dbe..6aa189fc9eb98f54b55729fc7bac7f14d579b22c 100644 |
--- a/Source/core/layout/LayoutBlock.cpp |
+++ b/Source/core/layout/LayoutBlock.cpp |
@@ -3547,8 +3547,12 @@ void LayoutBlock::addFocusRingRects(Vector<LayoutRect>& rects, const LayoutPoint |
addChildFocusRingRects(rects, additionalOffset); |
} |
- if (inlineElementContinuation) |
- inlineElementContinuation->addFocusRingRects(rects, additionalOffset + (inlineElementContinuation->containingBlock()->location() - location())); |
+ if (inlineElementContinuation) { |
+ Vector<LayoutRect> inlineFocusRingRects; |
+ // We need to give the LayoutInline a clean vector to let it add focus ring rects of line boxes. |
+ inlineElementContinuation->addFocusRingRects(inlineFocusRingRects, additionalOffset + (inlineElementContinuation->containingBlock()->location() - location())); |
+ rects.appendVector(inlineFocusRingRects); |
+ } |
} |
void LayoutBlock::computeSelfHitTestRects(Vector<LayoutRect>& rects, const LayoutPoint& layerOffset) const |