| Index: Source/core/rendering/RenderListItem.cpp
|
| diff --git a/Source/core/rendering/RenderListItem.cpp b/Source/core/rendering/RenderListItem.cpp
|
| index fd911150e8566d48e3f436e4d2474847e1fd00e5..b8b28554051478ed17f82f524eecfa3b38a3ca2e 100644
|
| --- a/Source/core/rendering/RenderListItem.cpp
|
| +++ b/Source/core/rendering/RenderListItem.cpp
|
| @@ -375,7 +375,7 @@ void RenderListItem::positionListMarker()
|
| adjustOverflow = true;
|
| }
|
| box->setOverflowFromLogicalRects(newLogicalLayoutOverflowRect, newLogicalVisualOverflowRect, lineTop, lineBottom);
|
| -
|
| +
|
| if (box->boxModelObject()->hasSelfPaintingLayer())
|
| hitSelfPaintingLayer = true;
|
| }
|
| @@ -390,16 +390,16 @@ void RenderListItem::positionListMarker()
|
| bool propagateLayoutOverflow = true;
|
| do {
|
| o = o->parentBox();
|
| - if (o->hasOverflowClip())
|
| - propagateVisualOverflow = false;
|
| if (o->isRenderBlock()) {
|
| if (propagateVisualOverflow)
|
| - toRenderBlock(o)->addVisualOverflow(markerRect);
|
| + toRenderBlock(o)->addVisualOverflow(markerRect, VisualOverflowClippedByContentsClip);
|
| if (propagateLayoutOverflow)
|
| toRenderBlock(o)->addLayoutOverflow(markerRect);
|
| }
|
| - if (o->hasOverflowClip())
|
| + if (o->hasOverflowClip()) {
|
| + propagateVisualOverflow = false;
|
| propagateLayoutOverflow = false;
|
| + }
|
| if (o->hasSelfPaintingLayer())
|
| propagateVisualOverflow = false;
|
| markerRect.moveBy(-o->location());
|
|
|