[Webkit-unassigned] [Bug 52655] Hidden composited iframes cause infinite loop

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Mon Oct 17 08:00:02 PDT 2011


https://bugs.webkit.org/show_bug.cgi?id=52655





--- Comment #12 from Fady Samuel <fsamuel at chromium.org>  2011-10-17 08:00:02 PST ---
What's the right solution for this? A flag that indicates we're in the process of recalculating style so that scheduleSetNeedsStyleRecalc() is not called?

(In reply to comment #11)
> Here's the smoking gun. Inside of recalcStyle(), notifyIFramesOfCompositingChange() is calling scheduleSetNeedsStyleRecalc(), so we never get out of updateStyleForAllDocuments.
> 
> 
> #0  WebCore::ContainerNode::scheduleSetNeedsStyleRecalc (this=0x1001d4f00, changeType=WebCore::SyntheticStyleChange) at /Volumes/SSData/Development/OSX/webkit/OpenSource/Source/WebCore/dom/ContainerNode.cpp:759
> #1  0x00000001038ceeb0 in WebCore::RenderLayerCompositor::notifyIFramesOfCompositingChange (this=0x10017f850) at /Volumes/SSData/Development/OSX/webkit/OpenSource/Source/WebCore/rendering/RenderLayerCompositor.cpp:1900
> #2  0x00000001038ce58c in WebCore::RenderLayerCompositor::enableCompositingMode (this=0x10017f850, enable=true) at /Volumes/SSData/Development/OSX/webkit/OpenSource/Source/WebCore/rendering/RenderLayerCompositor.cpp:125
> #3  0x00000001038d14a4 in WebCore::RenderLayerCompositor::updateBacking (this=0x10017f850, layer=0x1001dcb28, shouldRepaint=WebCore::RenderLayerCompositor::CompositingChangeRepaintNow) at /Volumes/SSData/Development/OSX/webkit/OpenSource/Source/WebCore/rendering/RenderLayerCompositor.cpp:340
> #4  0x00000001038d1b93 in WebCore::RenderLayerCompositor::updateLayerCompositingState (this=0x10017f850, layer=0x1001dcb28, shouldRepaint=WebCore::RenderLayerCompositor::CompositingChangeRepaintNow) at /Volumes/SSData/Development/OSX/webkit/OpenSource/Source/WebCore/rendering/RenderLayerCompositor.cpp:410
> #5  0x00000001038bc222 in WebCore::RenderLayer::styleChanged (this=0x1001dcb28, diff=WebCore::StyleDifferenceEqual, oldStyle=0x123481310) at /Volumes/SSData/Development/OSX/webkit/OpenSource/Source/WebCore/rendering/RenderLayer.cpp:4204
> #6  0x000000010384c48b in WebCore::RenderBoxModelObject::styleDidChange (this=0x1001dc818, diff=WebCore::StyleDifferenceEqual, oldStyle=0x123481310) at /Volumes/SSData/Development/OSX/webkit/OpenSource/Source/WebCore/rendering/RenderBoxModelObject.cpp:373
> #7  0x0000000103834bc0 in WebCore::RenderBox::styleDidChange (this=0x1001dc818, diff=WebCore::StyleDifferenceEqual, oldStyle=0x123481310) at /Volumes/SSData/Development/OSX/webkit/OpenSource/Source/WebCore/rendering/RenderBox.cpp:345
> #8  0x00000001039121fd in WebCore::RenderReplaced::styleDidChange (this=0x1001dc818, diff=WebCore::StyleDifferenceEqual, oldStyle=0x123481310) at /Volumes/SSData/Development/OSX/webkit/OpenSource/Source/WebCore/rendering/RenderReplaced.cpp:71
> #9  0x00000001039f269d in WebCore::RenderWidget::styleDidChange (this=0x1001dc818, diff=WebCore::StyleDifferenceEqual, oldStyle=0x123481310) at /Volumes/SSData/Development/OSX/webkit/OpenSource/Source/WebCore/rendering/RenderWidget.cpp:215
> #10 0x0000000103902023 in WebCore::RenderObject::setStyle (this=0x1001dc818, style=@0x7fff5fbfd160) at /Volumes/SSData/Development/OSX/webkit/OpenSource/Source/WebCore/rendering/RenderObject.cpp:1727
> #11 0x000000010390177b in WebCore::RenderObject::setAnimatableStyle (this=0x1001dc818, style=@0x7fff5fbfd1a0) at /Volumes/SSData/Development/OSX/webkit/OpenSource/Source/WebCore/rendering/RenderObject.cpp:1640
> #12 0x000000010370a9e3 in WebCore::Node::setRenderStyle (this=0x1001d4f00, s=@0x7fff5fbfd2d0) at /Volumes/SSData/Development/OSX/webkit/OpenSource/Source/WebCore/dom/Node.cpp:1493
> #13 0x0000000102d77b49 in WebCore::Element::recalcStyle (this=0x1001d4f00, change=WebCore::Node::NoChange) at /Volumes/SSData/Development/OSX/webkit/OpenSource/Source/WebCore/dom/Element.cpp:1124
> #14 0x0000000102d77e3f in WebCore::Element::recalcStyle (this=0x1001d46f0, change=WebCore::Node::NoChange) at /Volumes/SSData/Development/OSX/webkit/OpenSource/Source/WebCore/dom/Element.cpp:1158
> #15 0x0000000102d77e3f in WebCore::Element::recalcStyle (this=0x1001d2f90, change=WebCore::Node::NoChange) at /Volumes/SSData/Development/OSX/webkit/OpenSource/Source/WebCore/dom/Element.cpp:1158
> #16 0x0000000102d77e3f in WebCore::Element::recalcStyle (this=0x1001d27b0, change=WebCore::Node::NoChange) at /Volumes/SSData/Development/OSX/webkit/OpenSource/Source/WebCore/dom/Element.cpp:1158
> #17 0x0000000102d77e3f in WebCore::Element::recalcStyle (this=0x110e4aa40, change=WebCore::Node::NoChange) at /Volumes/SSData/Development/OSX/webkit/OpenSource/Source/WebCore/dom/Element.cpp:1158
> #18 0x0000000102d77e3f in WebCore::Element::recalcStyle (this=0x100182c10, change=WebCore::Node::NoChange) at /Volumes/SSData/Development/OSX/webkit/OpenSource/Source/WebCore/dom/Element.cpp:1158
> #19 0x0000000102ba7161 in WebCore::Document::recalcStyle (this=0x10082ce00, change=WebCore::Node::NoChange) at /Volumes/SSData/Development/OSX/webkit/OpenSource/Source/WebCore/dom/Document.cpp:1562
> #20 0x0000000102ba81d9 in WebCore::Document::updateStyleIfNeeded (this=0x10082ce00) at /Volumes/SSData/Development/OSX/webkit/OpenSource/Source/WebCore/dom/Document.cpp:1616
> #21 0x0000000102ba82e2 in WebCore::Document::updateStyleForAllDocuments () at /Volumes/SSData/Development/OSX/webkit/OpenSource/Source/WebCore/dom/Document.cpp:1633
> #22 0x0000000103a40a6e in WebCore::ScheduledAction::execute (this=0x1006b3ec0, document=0x10082ce00) at /Volumes/SSData/Development/OSX/webkit/OpenSource/Source/WebCore/bindings/js/ScheduledAction.cpp:131
> #23 0x0000000103a40894 in WebCore::ScheduledAction::execute (this=0x1006b3ec0, context=0x10082cff8) at /Volumes/SSData/Development/OSX/webkit/OpenSource/Source/WebCore/bindings/js/ScheduledAction.cpp:80
> #24 0x0000000102d10636 in WebCore::DOMTimer::fired (this=0x1006b3d80) at /Volumes/SSData/Development/OSX/webkit/OpenSource/Source/WebCore/page/DOMTimer.cpp:148
> #25 0x0000000103c95bd7 in WebCore::ThreadTimers::sharedTimerFiredInternal (this=0x107a17910) at /Volumes/SSData/Development/OSX/webkit/OpenSource/Source/WebCore/platform/ThreadTimers.cpp:115
> #26 0x0000000103c959a9 in WebCore::ThreadTimers::sharedTimerFired () at /Volumes/SSData/Development/OSX/webkit/OpenSource/Source/WebCore/platform/ThreadTimers.cpp:93

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.



More information about the webkit-unassigned mailing list