[Webkit-unassigned] [Bug 21834] HTMLElement::isContentEditable() can cause an updateRendering() to happen in the middle of layout

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Tue Aug 17 16:38:59 PDT 2010


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





--- Comment #6 from Simon Fraser (smfr) <simon.fraser at apple.com>  2010-08-17 16:38:59 PST ---
isContentEditable() can also cause recalcStyle in the middle of painting:

#0  0x00000001014f16f2 in WebCore::RenderLayer::dirtyZOrderLists (this=0x11a22ea60) at /Volumes/InternalData/Development/webkit/OpenSource/WebCore/rendering/RenderLayer.cpp:3263
#1  0x00000001014f1fb8 in WebCore::RenderLayer::addChild (this=0x11a22ea60, child=0x104de9d58, beforeChild=<value temporarily unavailable, due to optimizations>) at /Volumes/InternalData/Development/webkit/OpenSource/WebCore/rendering/RenderLayer.cpp:955
#2  0x000000010151d186 in WebCore::RenderObject::addLayers (this=0x11a22ea60, parentLayer=0x1, newObject=0x120a7a400) at /Volumes/InternalData/Development/webkit/OpenSource/WebCore/rendering/RenderObject.cpp:445
#3  0x0000000101521884 in WebCore::RenderObjectChildList::insertChildNode (this=0x11a22ea38, owner=0x11a22e9a0, child=0x104de9c98, beforeChild=<value temporarily unavailable, due to optimizations>, fullInsert=true) at /Volumes/InternalData/Development/webkit/OpenSource/WebCore/rendering/RenderObjectChildList.cpp:203
#4  0x000000010151e717 in WebCore::RenderObject::addChild (this=0x11a22e9a0, newChild=0x104de9c98, beforeChild=0x104de8c70) at /Volumes/InternalData/Development/webkit/OpenSource/WebCore/rendering/RenderObject.cpp:303
#5  0x0000000101451ef1 in WebCore::Node::createRendererIfNeeded (this=0x119dcd258) at /Volumes/InternalData/Development/webkit/OpenSource/WebCore/dom/Node.cpp:1364
#6  0x0000000100f36e10 in WebCore::Element::attach (this=<value temporarily unavailable, due to optimizations>) at /Volumes/InternalData/Development/webkit/OpenSource/WebCore/dom/Element.cpp:825
#7  0x0000000100f391e7 in WebCore::Element::recalcStyle (this=0x119dcd258, change=WebCore::Node::NoChange) at /Volumes/InternalData/Development/webkit/OpenSource/WebCore/dom/Element.cpp:910
#8  0x0000000100f3932f in WebCore::Element::recalcStyle (this=0x120a7a400, change=WebCore::Node::NoChange) at /Volumes/InternalData/Development/webkit/OpenSource/WebCore/dom/Element.cpp:973
#9  0x0000000100f3932f in WebCore::Element::recalcStyle (this=0x11eeee870, change=WebCore::Node::NoChange) at /Volumes/InternalData/Development/webkit/OpenSource/WebCore/dom/Element.cpp:973
#10 0x0000000100f3932f in WebCore::Element::recalcStyle (this=0x11eeee960, change=WebCore::Node::NoChange) at /Volumes/InternalData/Development/webkit/OpenSource/WebCore/dom/Element.cpp:973
#11 0x0000000100f3932f in WebCore::Element::recalcStyle (this=0x11f87e400, change=WebCore::Node::NoChange) at /Volumes/InternalData/Development/webkit/OpenSource/WebCore/dom/Element.cpp:973
#12 0x0000000100f3932f in WebCore::Element::recalcStyle (this=0x11eeee0f0, change=WebCore::Node::NoChange) at /Volumes/InternalData/Development/webkit/OpenSource/WebCore/dom/Element.cpp:973
#13 0x0000000100e78def in WebCore::Node::nextSibling () at /Volumes/InternalData/Development/webkit/OpenSource/WebCore/dom/Node.h:1376
#14 0x0000000100e78def in WebCore::Document::recalcStyle (this=0x120814c00, change=WebCore::Node::NoChange) at /Volumes/InternalData/Development/webkit/OpenSource/WebCore/dom/Document.cpp:1374
#15 0x0000000100e73b52 in WebCore::Document::updateStyleIfNeeded (this=0x120814c00) at /Volumes/InternalData/Development/webkit/OpenSource/WebCore/dom/Document.cpp:1418
#16 0x0000000100fe91da in WebCore::Node::renderer () at /Volumes/InternalData/Development/webkit/OpenSource/WebCore/dom/Node.h:625
#17 0x0000000100fe91da in WebCore::HTMLElement::isContentEditable (this=0x11a29dd80) at /Volumes/InternalData/Development/webkit/OpenSource/WebCore/html/HTMLElement.cpp:627
#18 0x00000001014501b8 in WebCore::Node::isContentEditable (this=<value temporarily unavailable, due to optimizations>) at /Volumes/InternalData/Development/webkit/OpenSource/WebCore/dom/Node.cpp:647
#19 0x0000000100fe204c in WebCore::isEditablePosition (p=<value temporarily unavailable, due to optimizations>) at /Volumes/InternalData/Development/webkit/OpenSource/WebCore/editing/htmlediting.cpp:183
#20 0x00000001016dfde1 in WebCore::VisibleSelection::isContentEditable (this=<value temporarily unavailable, due to optimizations>) at /Volumes/InternalData/Development/webkit/OpenSource/WebCore/editing/VisibleSelection.cpp:559
#21 0x000000010149f169 in WebCore::RenderBlock::paintCaret (this=0x104deba30, paintInfo=@0x7fff5fbfd3d0, tx=253, ty=48, type=WebCore::CursorCaret) at /Volumes/InternalData/Development/webkit/OpenSource/WebCore/rendering/RenderBlock.cpp:1697
#22 0x00000001014a8ca3 in WebCore::RenderBlock::paintObject (this=0x104deba30, paintInfo=@0x7fff5fbfd3d0, tx=253, ty=48) at /Volumes/InternalData/Development/webkit/OpenSource/WebCore/rendering/RenderBlock.cpp:1782
#23 0x000000010149e5b2 in WebCore::RenderBlock::paint (this=0x104deba30, paintInfo=@0x7fff5fbfd3d0, tx=253, ty=48) at /Volumes/InternalData/Development/webkit/OpenSource/WebCore/rendering/RenderBlock.cpp:1536
#24 0x00000001014a3c5c in WebCore::RenderBlock::paintChildren (this=0x104deb7d0, paintInfo=@0x7fff5fbfd7c0, tx=247, ty=45) at /Volumes/InternalData/Development/webkit/OpenSource/WebCore/rendering/RenderBlock.cpp:1678
#25 0x00000001014a8c10 in WebCore::RenderBlock::paintObject (this=0x104deb7d0, paintInfo=@0x7fff5fbfd7c0, tx=247, ty=45) at /Volumes/InternalData/Development/webkit/OpenSource/WebCore/rendering/RenderBlock.cpp:1744
#26 0x000000010149e5b2 in WebCore::RenderBlock::paint (this=0x104deb7d0, paintInfo=@0x7fff5fbfd7c0, tx=247, ty=45) at /Volumes/InternalData/Development/webkit/OpenSource/WebCore/rendering/RenderBlock.cpp:1536
#27 0x000000010155bcde in WebCore::RenderTextControlSingleLine::paint (this=0x104deb7d0, paintInfo=@0x7fff5fbfd7c0, tx=236, ty=34) at /Volumes/InternalData/Development/webkit/OpenSource/WebCore/rendering/RenderTextControlSingleLine.cpp:186
#28 0x00000001014fa738 in WebCore::RenderLayer::paintLayer (this=0x104deb920, rootLayer=0x11a22ea60, p=0x7fff5fbfdf40, paintDirtyRect=@0x7fff5fbfddf0, paintBehavior=0, paintingRoot=0x11a22e9a0, overlapTestRequests=0x0, paintFlags=0) at /Volumes/InternalData/Development/webkit/OpenSource/WebCore/rendering/RenderLayer.cpp:2399
#29 0x00000001014fa007 in WebCore::RenderLayer::paintLayer (this=0x104deb6c0, rootLayer=0x11a22ea60, p=0x7fff5fbfdf40, paintDirtyRect=@0x7fff5fbfddf0, paintBehavior=<value temporarily unavailable, due to optimizations>, paintingRoot=0x11a22e9a0, overlapTestRequests=0x0, paintFlags=0) at /Volumes/InternalData/Development/webkit/OpenSource/WebCore/rendering/RenderLayer.cpp:2424
#30 0x0000000101500944 in WebCore::RenderLayerBacking::paintIntoLayer (this=0x11f8a85a0, rootLayer=0x11a22ea60, context=0x7fff5fbfdf40, paintDirtyRect=@0x7fff5fbfddf0, paintBehavior=0, paintingPhase=<value temporarily unavailable, due to optimizations>, paintingRoot=0x11a22e9a0) at /Volumes/InternalData/Development/webkit/OpenSource/WebCore/rendering/RenderLayerBacking.cpp:1079
#31 0x0000000101500c2f in WebCore::RenderLayerBacking::paintContents (this=0x11f8a85a0, context=@0x7fff5fbfdf40, paintingPhase=WebCore::GraphicsLayerPaintAll, clip=@0x7fff5fbfdf30) at /Volumes/InternalData/Development/webkit/OpenSource/WebCore/rendering/RenderLayerBacking.cpp:1140
#32 0x00000001016f654c in +[WebLayer drawContents:ofLayer:intoContext:] (self=<value temporarily unavailable, due to optimizations>, _cmd=<value temporarily unavailable, due to optimizations>, layerContents=0x119e18080, layer=0x118bc5bd0, context=0x11e3120b0) at /Volumes/InternalData/Development/webkit/OpenSource/WebCore/platform/graphics/mac/WebLayer.mm:68

-- 
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