2009-06-19 Simon Fraser <simon.fraser@apple.com>

        Reviewed by John Sullivan

        <rdar://problem/6953673> Crash in RenderLayerCompositor::setCompositingParent

        Fix a crash that could occur in complex content due to timing issues
        when doing a partial layer tree rebuild which is required when painting;
        setCompositingParent() could be called with a parent which has not been made
        compositing yet.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@44876 268f45cc-cd09-0410-ab3c-d52691b4dbfc
parent c02ac56d
2009-06-19 Simon Fraser <simon.fraser@apple.com>
Reviewed by John Sullivan
<rdar://problem/6953673> Crash in RenderLayerCompositor::setCompositingParent
Fix a crash that could occur in complex content due to timing issues
when doing a partial layer tree rebuild which is required when painting;
setCompositingParent() could be called with a parent which has not been made
compositing yet.
2009-06-19 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
Build fix. Adding missing HTMLDataGrid* files to the build.
......
......@@ -436,8 +436,13 @@ void RenderLayerCompositor::computeCompositingRequirements(RenderLayer* layer, s
void RenderLayerCompositor::setCompositingParent(RenderLayer* childLayer, RenderLayer* parentLayer)
{
ASSERT(childLayer->isComposited());
ASSERT(!parentLayer || parentLayer->isComposited());
// It's possible to be called with a parent that isn't yet composited when we're doing
// partial updates as required by painting or hit testing. Just bail in that case;
// we'll do a full layer update soon.
if (!parentLayer || !parentLayer->isComposited())
return;
if (parentLayer) {
GraphicsLayer* hostingLayer = parentLayer->backing()->parentForSublayers();
GraphicsLayer* hostedLayer = childLayer->backing()->childForSuperlayers();
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment