| 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 27e2f756b675aba83d5c954abd15e7b6acbff981..3888503172cc910d0def505c4b878ad79773f69e 100644
|
| --- a/third_party/WebKit/Source/core/layout/LayoutBlock.cpp
|
| +++ b/third_party/WebKit/Source/core/layout/LayoutBlock.cpp
|
| @@ -859,7 +859,7 @@ void LayoutBlock::startDelayUpdateScrollInfo()
|
| ++gDelayUpdateScrollInfo;
|
| }
|
|
|
| -bool LayoutBlock::finishDelayUpdateScrollInfo(SubtreeLayoutScope* layoutScope)
|
| +bool LayoutBlock::finishDelayUpdateScrollInfo(SubtreeLayoutScope* layoutScope, ScrollPositionMap* scrollMap)
|
| {
|
| bool childrenMarkedForRelayout = false;
|
|
|
| @@ -873,7 +873,10 @@ bool LayoutBlock::finishDelayUpdateScrollInfo(SubtreeLayoutScope* layoutScope)
|
|
|
| for (auto* block : *infoSet) {
|
| if (block->hasOverflowClip()) {
|
| - childrenMarkedForRelayout |= block->layer()->getScrollableArea()->updateAfterLayout(layoutScope);
|
| + PaintLayerScrollableArea* scrollableArea = block->layer()->getScrollableArea();
|
| + if (scrollMap)
|
| + scrollMap->add(scrollableArea, scrollableArea->scrollPositionDouble());
|
| + childrenMarkedForRelayout |= scrollableArea->updateAfterLayout(layoutScope);
|
| }
|
| }
|
| }
|
|
|