summaryrefslogtreecommitdiffstats
path: root/Source/WebCore
diff options
context:
space:
mode:
authorTeng-Hui Zhu <ztenghui@google.com>2011-06-15 14:30:34 -0700
committerTeng-Hui Zhu <ztenghui@google.com>2011-06-15 14:59:59 -0700
commita61d17ffd296786f61755ec29a4fcff1223ba88f (patch)
tree446182f3bafbdc74935ee7405a1300002c9599b5 /Source/WebCore
parentec127d933c57ca94eb3715bd78546165496c991e (diff)
downloadexternal_webkit-a61d17ffd296786f61755ec29a4fcff1223ba88f.zip
external_webkit-a61d17ffd296786f61755ec29a4fcff1223ba88f.tar.gz
external_webkit-a61d17ffd296786f61755ec29a4fcff1223ba88f.tar.bz2
Fix the crash caused by recent webkit RenderLayerCompositor change
We used to rely on the fact that RenderLayerBacking is the only subclass of GraphicsLayerClient, but now the RenderLayerCompositor also inherit it and is used for iframe. That cause us to get invalid pointer in GraphicsLayerAndroid. The solution here is to disable the new webkit approach b/c we have our own iframe support already. bug:4592195 Change-Id: Ia786233907d83028fdc6865c28fbbd5291564ad0
Diffstat (limited to 'Source/WebCore')
-rw-r--r--Source/WebCore/rendering/RenderLayerCompositor.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/Source/WebCore/rendering/RenderLayerCompositor.cpp b/Source/WebCore/rendering/RenderLayerCompositor.cpp
index 786f806..66dcf40 100644
--- a/Source/WebCore/rendering/RenderLayerCompositor.cpp
+++ b/Source/WebCore/rendering/RenderLayerCompositor.cpp
@@ -1520,6 +1520,15 @@ bool RenderLayerCompositor::needsContentsCompositingLayer(const RenderLayer* lay
bool RenderLayerCompositor::requiresScrollLayer(RootLayerAttachment attachment) const
{
+#if PLATFORM(ANDROID)
+ // Recently, RenderLayerCompositor is changed to be a subclass of
+ // GraphicsLayerClient, and it is used for iframe.
+ // http://trac.webkit.org/changeset/75262
+ // We have our own support for iframe, before we embrace this new approach,
+ // we will disable it.
+ // TODO: Investigate how to utilize this way to support iframe.
+ return false;
+#endif
// We need to handle our own scrolling if we're:
return !m_renderView->frameView()->platformWidget() // viewless (i.e. non-Mac, or Mac in WebKit2)
|| attachment == RootLayerAttachedViaEnclosingFrame; // a composited frame on Mac