Upstream version 10.38.208.0
[platform/framework/web/crosswalk.git] / src / third_party / WebKit / Source / core / rendering / RenderLayerScrollableArea.cpp
index 9b304aa..9e060e4 100644 (file)
@@ -365,10 +365,7 @@ void RenderLayerScrollableArea::setScrollOffset(const IntPoint& newScrollOffset)
         box().setPreviousPaintInvalidationRect(box().boundsRectForPaintInvalidation(repaintContainer));
         // Update regions, scrolling may change the clip of a particular region.
         frameView->updateAnnotatedRegions();
-        // FIXME: We shouldn't call updateWidgetPositions() here since it might tear down the render tree,
-        // for now we just crash to avoid allowing an attacker to use after free.
-        frameView->updateWidgetPositions();
-        RELEASE_ASSERT(frameView->renderView());
+        frameView->setNeedsUpdateWidgetPositions();
         updateCompositingLayersAfterScroll();
     }
 
@@ -1443,7 +1440,8 @@ static bool layerNeedsCompositedScrolling(const RenderLayer* layer)
     return layer->scrollsOverflow()
         && layer->compositor()->acceleratedCompositingForOverflowScrollEnabled()
         && !layer->hasDescendantWithClipPath()
-        && !layer->hasAncestorWithClipPath();
+        && !layer->hasAncestorWithClipPath()
+        && !layer->renderer()->style()->hasBorderRadius();
 }
 
 void RenderLayerScrollableArea::updateNeedsCompositedScrolling()