Index: Source/core/page/scrolling/ScrollingCoordinator.cpp |
diff --git a/Source/core/page/scrolling/ScrollingCoordinator.cpp b/Source/core/page/scrolling/ScrollingCoordinator.cpp |
index fb14b239c7a793aaa14b2e3d25578b73a064dfdc..ba8cca0f7d5d8ef99e1b655de4918b0e15d4b823 100644 |
--- a/Source/core/page/scrolling/ScrollingCoordinator.cpp |
+++ b/Source/core/page/scrolling/ScrollingCoordinator.cpp |
@@ -394,13 +394,15 @@ static void makeLayerChildFrameMap(const LocalFrame* currentFrame, LayerFrameMap |
map->clear(); |
const FrameTree& tree = currentFrame->tree(); |
for (const LocalFrame* child = tree.firstChild(); child; child = child->tree().nextSibling()) { |
- if (const RenderLayer* containingLayer = child->ownerRenderer()->enclosingLayer()) { |
- LayerFrameMap::iterator iter = map->find(containingLayer); |
- if (iter == map->end()) |
- map->add(containingLayer, Vector<const LocalFrame*>()).storedValue->value.append(child); |
- else |
- iter->value.append(child); |
- } |
+ const RenderObject* ownerRenderer = child->ownerRenderer(); |
+ if (!ownerRenderer) |
+ continue; |
+ const RenderLayer* containingLayer = ownerRenderer->enclosingLayer(); |
+ LayerFrameMap::iterator iter = map->find(containingLayer); |
+ if (iter == map->end()) |
+ map->add(containingLayer, Vector<const LocalFrame*>()).storedValue->value.append(child); |
+ else |
+ iter->value.append(child); |
} |
} |