[Webkit-unassigned] [Bug 62120] New: ASSERT in WebCore::FrameView::scheduleRelayoutOfSubtree

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Mon Jun 6 05:09:42 PDT 2011


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

           Summary: ASSERT in
                    WebCore::FrameView::scheduleRelayoutOfSubtree
           Product: WebKit
           Version: 528+ (Nightly build)
          Platform: Unspecified
               URL: http://developer.gnome.org/pygobject/stable/glib-funct
                    ions.html
        OS/Version: Linux
            Status: NEW
          Severity: Normal
          Priority: P2
         Component: Layout and Rendering
        AssignedTo: webkit-unassigned at lists.webkit.org
        ReportedBy: svillar at igalia.com


Everytime I visit http://developer.gnome.org/pygobject/stable/glib-functions.html WebKit hits this assert (tested with WebKitGtk+ and Chromium Linux ports)

This is the backtrace using WebKitGtk+:

Program received signal SIGSEGV, Segmentation fault.
0x00007ffff3d0321c in WebCore::FrameView::scheduleRelayoutOfSubtree (this=0x7fffe001e4a0, relayoutRoot=0x110f058)
    at ../../Source/WebCore/page/FrameView.cpp:1811
1811            ASSERT(!m_layoutRoot->container() || !m_layoutRoot->container()->needsLayout());
(gdb) bt
#0  0x00007ffff3d0321c in WebCore::FrameView::scheduleRelayoutOfSubtree (this=0x7fffe001e4a0, relayoutRoot=
    0x110f058) at ../../Source/WebCore/page/FrameView.cpp:1811
#1  0x00007ffff3f1f802 in WebCore::RenderObject::scheduleRelayout (this=0x110f058)
    at ../../Source/WebCore/rendering/RenderObject.cpp:2196
#2  0x00007ffff391d4b4 in WebCore::RenderObject::markContainingBlocksForLayout (this=0x11084a8, scheduleRelayout=
    true, newRoot=0x0) at ../../Source/WebCore/rendering/RenderObject.h:1050
#3  0x00007ffff391cfb5 in WebCore::RenderObject::setNeedsLayout (this=0x11084a8, b=true, markParents=true)
    at ../../Source/WebCore/rendering/RenderObject.h:939
#4  0x00007ffff391ce98 in WebCore::RenderObject::setNeedsLayoutAndPrefWidthsRecalc (this=0x11084a8)
    at ../../Source/WebCore/rendering/RenderObject.h:508
#5  0x00007ffff3f1484f in WebCore::RenderObjectChildList::appendChildNode (this=0x110f0e8, owner=0x110f058, 
    newChild=0x11084a8, fullAppend=true) at ../../Source/WebCore/rendering/RenderObjectChildList.cpp:183
#6  0x00007ffff3f148e7 in WebCore::RenderObjectChildList::insertChildNode (this=0x110f0e8, owner=0x110f058, 
    child=0x11084a8, beforeChild=0x0, fullInsert=true)
    at ../../Source/WebCore/rendering/RenderObjectChildList.cpp:194
#7  0x00007ffff3f170be in WebCore::RenderObject::addChild (this=0x110f058, newChild=0x11084a8, beforeChild=0x0)
    at ../../Source/WebCore/rendering/RenderObject.cpp:311
#8  0x00007ffff3e5a099 in WebCore::RenderBlock::addChildIgnoringAnonymousColumnBlocks (this=0x110f058, newChild=
    0x11084a8, beforeChild=0x0) at ../../Source/WebCore/rendering/RenderBlock.cpp:753
#9  0x00007ffff3e5a268 in WebCore::RenderBlock::addChildIgnoringContinuation (this=0x110f058, newChild=
    0x11084a8, beforeChild=0x0) at ../../Source/WebCore/rendering/RenderBlock.cpp:771
#10 0x00007ffff3e5a1aa in WebCore::RenderBlock::addChild (this=0x110f058, newChild=0x11084a8, beforeChild=0x0)
    at ../../Source/WebCore/rendering/RenderBlock.cpp:764
#11 0x00007ffff3f15d7f in WebCore::RenderObjectChildList::updateBeforeAfterContent (this=0x1136828, owner=
    0x1136798, type=WebCore::BEFORE, styledObject=0x1136798)
    at ../../Source/WebCore/rendering/RenderObjectChildList.cpp:467
#12 0x00007ffff3e58584 in WebCore::RenderBlock::updateBeforeAfterContent (this=0x1136798, pseudoId=
    WebCore::BEFORE) at ../../Source/WebCore/rendering/RenderBlock.cpp:279
#13 0x00007ffff3e58443 in WebCore::RenderBlock::styleDidChange (this=0x1136798, diff=
    WebCore::StyleDifferenceEqual, oldStyle=0x0) at ../../Source/WebCore/rendering/RenderBlock.cpp:260
#14 0x00007ffff3f1d84e in WebCore::RenderObject::setStyle (this=0x1136798, style=...)
    at ../../Source/WebCore/rendering/RenderObject.cpp:1630
---Type <return> to continue, or q <return> to quit---
#15 0x00007ffff3f1d3cb in WebCore::RenderObject::setAnimatableStyle (this=0x1136798, style=...)
    at ../../Source/WebCore/rendering/RenderObject.cpp:1543
#16 0x00007ffff398d697 in WebCore::NodeRendererFactory::createRendererAndStyle (this=0x7fffffffb8a0)
    at ../../Source/WebCore/dom/NodeRenderingContext.cpp:226
#17 0x00007ffff398d818 in WebCore::NodeRendererFactory::createRendererIfNeeded (this=0x7fffffffb8a0)
    at ../../Source/WebCore/dom/NodeRenderingContext.cpp:255
#18 0x00007ffff397725b in WebCore::Node::createRendererIfNeeded (this=0x1103e10)
    at ../../Source/WebCore/dom/Node.cpp:1444
#19 0x00007ffff39546db in WebCore::Element::attach (this=0x1103e10) at ../../Source/WebCore/dom/Element.cpp:1013
#20 0x00007ffff3b1c7a9 in WebCore::HTMLConstructionSite::attach<WebCore::Element> (this=0x7fffe0023798, parent=
    0x10b70e0, prpChild=...) at ../../Source/WebCore/html/parser/HTMLConstructionSite.cpp:111
#21 0x00007ffff3b1a6bc in WebCore::HTMLConstructionSite::attachToCurrent (this=0x7fffe0023798, child=...)
    at ../../Source/WebCore/html/parser/HTMLConstructionSite.cpp:263
#22 0x00007ffff3b1ab66 in WebCore::HTMLConstructionSite::insertHTMLElement (this=0x7fffe0023798, token=...)
    at ../../Source/WebCore/html/parser/HTMLConstructionSite.cpp:293
#23 0x00007ffff3b3c690 in WebCore::HTMLTreeBuilder::processStartTagForInBody (this=0x7fffe0023770, token=...)
    at ../../Source/WebCore/html/parser/HTMLTreeBuilder.cpp:778
#24 0x00007ffff3b3ed57 in WebCore::HTMLTreeBuilder::processStartTag (this=0x7fffe0023770, token=...)
    at ../../Source/WebCore/html/parser/HTMLTreeBuilder.cpp:1211
#25 0x00007ffff3b3aba7 in WebCore::HTMLTreeBuilder::processToken (this=0x7fffe0023770, token=...)
    at ../../Source/WebCore/html/parser/HTMLTreeBuilder.cpp:462
#26 0x00007ffff3b3aa54 in WebCore::HTMLTreeBuilder::constructTreeFromAtomicToken (this=0x7fffe0023770, token=...)
    at ../../Source/WebCore/html/parser/HTMLTreeBuilder.cpp:443
#27 0x00007ffff3b3aa22 in WebCore::HTMLTreeBuilder::constructTreeFromToken (this=0x7fffe0023770, rawToken=...)
    at ../../Source/WebCore/html/parser/HTMLTreeBuilder.cpp:438
#28 0x00007ffff3b1e048 in WebCore::HTMLDocumentParser::pumpTokenizer (this=0x7fffe0022430, mode=
    WebCore::HTMLDocumentParser::AllowYield) at ../../Source/WebCore/html/parser/HTMLDocumentParser.cpp:276
#29 0x00007ffff3b1da64 in WebCore::HTMLDocumentParser::pumpTokenizerIfPossible (this=0x7fffe0022430, mode=
    WebCore::HTMLDocumentParser::AllowYield) at ../../Source/WebCore/html/parser/HTMLDocumentParser.cpp:175
#30 0x00007ffff3b1eacf in WebCore::HTMLDocumentParser::resumeParsingAfterScriptExecution (this=0x7fffe0022430)
    at ../../Source/WebCore/html/parser/HTMLDocumentParser.cpp:479
#31 0x00007ffff3b1ede1 in WebCore::HTMLDocumentParser::notifyFinished (this=0x7fffe0022430, cachedResource=
---Type <return> to continue, or q <return> to quit---
    0xcf6af0) at ../../Source/WebCore/html/parser/HTMLDocumentParser.cpp:524
#32 0x00007ffff3c1eaca in WebCore::CachedResource::checkNotify (this=0xcf6af0)
    at ../../Source/WebCore/loader/cache/CachedResource.cpp:151
#33 0x00007ffff3c31421 in WebCore::CachedScript::data (this=0xcf6af0, data=..., allDataReceived=true)
    at ../../Source/WebCore/loader/cache/CachedScript.cpp:104
#34 0x00007ffff3c30069 in WebCore::CachedResourceRequest::didFinishLoading (this=0xcf7010, loader=0xe5d190)
    at ../../Source/WebCore/loader/cache/CachedResourceRequest.cpp:164
#35 0x00007ffff3c957d0 in WebCore::SubresourceLoader::didFinishLoading (this=0xe5d190, finishTime=0)
    at ../../Source/WebCore/loader/SubresourceLoader.cpp:197
#36 0x00007ffff3c8ca4f in WebCore::ResourceLoader::didFinishLoading (this=0xe5d190, finishTime=0)
    at ../../Source/WebCore/loader/ResourceLoader.cpp:449
#37 0x00007ffff41c06f2 in WebCore::readCallback (source=0xe4f900, asyncResult=0xe715e0, data=0x0)
    at ../../Source/WebCore/platform/network/soup/ResourceHandleSoup.cpp:792


And this is Chromium's:

ASSERTION FAILED: !m_layoutRoot->container() || !m_layoutRoot->container()->needsLayout()
third_party/WebKit/Source/WebCore/page/FrameView.cpp(1807) : void WebCore::FrameView::scheduleRelayoutOfSubtree(WebCore::RenderObject*)

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7fffdb33e700 (LWP 18924)]
0x00007ffff5aaf38e in WebCore::FrameView::scheduleRelayoutOfSubtree(WebCore::RenderObject*) ()
   from ../chromium/src/out/Debug/lib.target/libwebkit.so
(gdb) bt
#0  0x00007ffff5aaf38e in WebCore::FrameView::scheduleRelayoutOfSubtree(WebCore::RenderObject*) ()
   from ../chromium/src/out/Debug/lib.target/libwebkit.so
#1  0x00007ffff553b3aa in WebCore::RenderObject::scheduleRelayout() ()
   from ../chromium/src/out/Debug/lib.target/libwebkit.so
#2  0x00007ffff531aa0e in WebCore::RenderObject::markContainingBlocksForLayout(bool, WebCore::RenderObject*) ()
   from ../chromium/src/out/Debug/lib.target/libwebkit.so
#3  0x00007ffff531a50f in WebCore::RenderObject::setNeedsLayout(bool, bool) ()
   from ../chromium/src/out/Debug/lib.target/libwebkit.so
#4  0x00007ffff5343a24 in WebCore::RenderObject::setNeedsLayoutAndPrefWidthsRecalc() ()
   from ../chromium/src/out/Debug/lib.target/libwebkit.so
#5  0x00007ffff553e70f in WebCore::RenderObjectChildList::appendChildNode(WebCore::RenderObject*, WebCore::RenderObject*, bool) () from ../chromium/src/out/Debug/lib.target/libwebkit.so
#6  0x00007ffff553e7a7 in WebCore::RenderObjectChildList::insertChildNode(WebCore::RenderObject*, WebCore::RenderObject*, WebCore::RenderObject*, bool) ()
   from ../chromium/src/out/Debug/lib.target/libwebkit.so
#7  0x00007ffff5531e76 in WebCore::RenderObject::addChild(WebCore::RenderObject*, WebCore::RenderObject*) ()
   from ../chromium/src/out/Debug/lib.target/libwebkit.so
#8  0x00007ffff55d1533 in WebCore::RenderBlock::addChildIgnoringAnonymousColumnBlocks(WebCore::RenderObject*, WebCore::RenderObject*) () from ../chromium/src/out/Debug/lib.target/libwebkit.so
#9  0x00007ffff55d1702 in WebCore::RenderBlock::addChildIgnoringContinuation(WebCore::RenderObject*, WebCore::RenderObject*) () from ../chromium/src/out/Debug/lib.target/libwebkit.so
#10 0x00007ffff55d1644 in WebCore::RenderBlock::addChild(WebCore::RenderObject*, WebCore::RenderObject*) ()
   from ../chromium/src/out/Debug/lib.target/libwebkit.so
#11 0x00007ffff553fc3f in WebCore::RenderObjectChildList::updateBeforeAfterContent(WebCore::RenderObject*, WebCore::PseudoId, WebCore::RenderObject const*) ()
   from ../chromium/src/out/Debug/lib.target/libwebkit.so
#12 0x00007ffff55cfa1e in WebCore::RenderBlock::updateBeforeAfterContent(WebCore::PseudoId) ()
   from ../chromium/src/out/Debug/lib.target/libwebkit.so
#13 0x00007ffff55cf8df in WebCore::RenderBlock::styleDidChange(WebCore::StyleDifference, WebCore::RenderStyle const*) () from ../chromium/src/out/Debug/lib.target/libwebkit.so
#14 0x00007ffff55391be in WebCore::RenderObject::setStyle(WTF::PassRefPtr<WebCore::RenderStyle>) ()
   from ../chromium/src/out/Debug/lib.target/libwebkit.so
---Type <return> to continue, or q <return> to quit---
#15 0x00007ffff5538ae3 in WebCore::RenderObject::setAnimatableStyle(WTF::PassRefPtr<WebCore::RenderStyle>) ()
   from ../chromium/src/out/Debug/lib.target/libwebkit.so
#16 0x00007ffff58de571 in WebCore::NodeRendererFactory::createRendererAndStyle() ()
   from ../chromium/src/out/Debug/lib.target/libwebkit.so
#17 0x00007ffff58de6ce in WebCore::NodeRendererFactory::createRendererIfNeeded() ()
   from ../chromium/src/out/Debug/lib.target/libwebkit.so
#18 0x00007ffff58c9a2f in WebCore::Node::createRendererIfNeeded() ()
   from ../chromium/src/out/Debug/lib.target/libwebkit.so
#19 0x00007ffff58aa529 in WebCore::Element::attach() ()
   from ../chromium/src/out/Debug/lib.target/libwebkit.so
#20 0x00007ffff57107fd in WTF::PassRefPtr<WebCore::Element> WebCore::HTMLConstructionSite::attach<WebCore::Element>(WebCore::ContainerNode*, WTF::PassRefPtr<WebCore::Element>) ()
   from ../chromium/src/out/Debug/lib.target/libwebkit.so
#21 0x00007ffff570ebfc in WebCore::HTMLConstructionSite::attachToCurrent(WTF::PassRefPtr<WebCore::Element>) ()
   from ../chromium/src/out/Debug/lib.target/libwebkit.so
#22 0x00007ffff570f0a6 in WebCore::HTMLConstructionSite::insertHTMLElement(WebCore::AtomicHTMLToken&) ()
   from ../chromium/src/out/Debug/lib.target/libwebkit.so
#23 0x00007ffff56f6a52 in WebCore::HTMLTreeBuilder::processStartTagForInBody(WebCore::AtomicHTMLToken&) ()
   from ../chromium/src/out/Debug/lib.target/libwebkit.so
#24 0x00007ffff56f9119 in WebCore::HTMLTreeBuilder::processStartTag(WebCore::AtomicHTMLToken&) ()
   from ../chromium/src/out/Debug/lib.target/libwebkit.so
#25 0x00007ffff56f4fab in WebCore::HTMLTreeBuilder::processToken(WebCore::AtomicHTMLToken&) ()
   from ../chromium/src/out/Debug/lib.target/libwebkit.so
#26 0x00007ffff56f4e58 in WebCore::HTMLTreeBuilder::constructTreeFromAtomicToken(WebCore::AtomicHTMLToken&) ()
   from ../chromium/src/out/Debug/lib.target/libwebkit.so
#27 0x00007ffff56f4e26 in WebCore::HTMLTreeBuilder::constructTreeFromToken(WebCore::HTMLToken&) ()
   from ../chromium/src/out/Debug/lib.target/libwebkit.so
#28 0x00007ffff56ddefa in WebCore::HTMLDocumentParser::pumpTokenizer(WebCore::HTMLDocumentParser::SynchronousMode) () from ../chromium/src/out/Debug/lib.target/libwebkit.so
#29 0x00007ffff56dd916 in WebCore::HTMLDocumentParser::pumpTokenizerIfPossible(WebCore::HTMLDocumentParser::SynchronousMode) () from ../chromium/src/out/Debug/lib.target/libwebkit.so
#30 0x00007ffff56de981 in WebCore::HTMLDocumentParser::resumeParsingAfterScriptExecution() ()
---Type <return> to continue, or q <return> to quit---
   from ../chromium/src/out/Debug/lib.target/libwebkit.so
#31 0x00007ffff56dec93 in WebCore::HTMLDocumentParser::notifyFinished(WebCore::CachedResource*) ()
   from ../chromium/src/out/Debug/lib.target/libwebkit.so
#32 0x00007ffff5a4c2dc in WebCore::CachedResource::checkNotify() ()
   from ../chromium/src/out/Debug/lib.target/libwebkit.so
#33 0x00007ffff5a5e971 in WebCore::CachedScript::data(WTF::PassRefPtr<WebCore::SharedBuffer>, bool) ()
   from ../chromium/src/out/Debug/lib.target/libwebkit.so
#34 0x00007ffff5a5d8e1 in WebCore::CachedResourceRequest::didFinishLoading(WebCore::SubresourceLoader*, double)
    () from ../chromium/src/out/Debug/lib.target/libwebkit.so
#35 0x00007ffff5a3f550 in WebCore::SubresourceLoader::didFinishLoading(double) ()
   from ../chromium/src/out/Debug/lib.target/libwebkit.so
#36 0x00007ffff5a3c66f in WebCore::ResourceLoader::didFinishLoading(WebCore::ResourceHandle*, double) ()
   from ../chromium/src/out/Debug/lib.target/libwebkit.so
#37 0x00007ffff52045e6 in WebCore::ResourceHandleInternal::didFinishLoading (this=0x7fffdfe1ca80, finishTime=
    1307361525.3011639) at third_party/WebKit/Source/WebKit/chromium/src/ResourceHandle.cpp:188

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