Bug 62624

Summary: Tests crashing on GTK debug bots because of failing ASSERT in FontCache.cpp
Product: WebKit Reporter: Mario Sanchez Prada <mario>
Component: Tools / TestsAssignee: Nobody <webkit-unassigned>
Status: RESOLVED DUPLICATE    
Severity: Normal CC: mrobinson
Priority: P2 Keywords: Gtk
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Linux   

Description Mario Sanchez Prada 2011-06-14 01:02:00 PDT
The following tests have been often crashing (not always) on the GTK bots:

  fast/backgrounds/animated-svg-as-background.html
  fast/xsl/xslt-extra-content-at-end.xml
  svg/W3C-SVG-1.1/text-tref-01-b.svg
  svg/carto.net/window.svg
  svg/wicd/rightsizing-grid.xhtml

They started failing after r88781, which is unrelated, so it must be something else.

Skipping for now. Attaching the full stack trace:

Thread 1 (Thread 25300):
#0  0x00002b1dfc076027 in WebCore::FontCache::getCachedFontData (this=0x237f470, platformData=0x5a90ab0, shouldRetain=WebCore::FontCache::Retain) at ../../Source/WebCore/platform/graphics/FontCache.cpp:297
#1  0x00002b1dfc075d85 in WebCore::FontCache::getCachedFontData (this=0x237f470, fontDescription=..., family="Arial", checkingAlternateName=false, shouldRetain=WebCore::FontCache::Retain) at ../../Source/WebCore/platform/graphics/FontCache.cpp:269
#2  0x00002b1dfc076967 in WebCore::FontCache::getFontData (this=0x237f470, font=..., familyIndex=@0x5a749a0, fontSelector=0x5a6c940) at ../../Source/WebCore/platform/graphics/FontCache.cpp:411
#3  0x00002b1dfc084859 in WebCore::FontFallbackList::fontDataAt (this=0x5a74910, font=0x5a748b8, realizedFontIndex=0) at ../../Source/WebCore/platform/graphics/FontFallbackList.cpp:105
#4  0x00002b1dfbb30a04 in WebCore::FontFallbackList::primaryFontData (this=0x5a74910, f=0x5a748b8) at ../../Source/WebCore/platform/graphics/FontFallbackList.h:66
#5  0x00002b1dfbb309af in WebCore::FontFallbackList::primarySimpleFontData (this=0x5a74910, f=0x5a748b8) at ../../Source/WebCore/platform/graphics/FontFallbackList.h:62
#6  0x00002b1dfbb30a9d in WebCore::Font::primaryFont (this=0x5a748b8) at ../../Source/WebCore/platform/graphics/Font.h:237
#7  0x00002b1dfc16509a in WebCore::textRunNeedsRenderingContext (font=...) at ../../Source/WebCore/rendering/svg/SVGTextRunRenderingContext.h:71
#8  0x00002b1dfc305eed in WebCore::constructTextRun (text=0x5a74c38, characters=UnicodeEncodeError: 'ascii' codec can't encode character u'\u7dad' in position 16: ordinal not in range(128)
, position=0, length=1) at ../../Source/WebCore/rendering/svg/SVGTextMetrics.cpp:89
#9  0x00002b1dfc305fef in WebCore::SVGTextMetrics::measureCharacterRange (text=0x5a74c38, position=0, length=1) at ../../Source/WebCore/rendering/svg/SVGTextMetrics.cpp:100
#10 0x00002b1dfc2ff44d in WebCore::SVGTextLayoutAttributesBuilder::propagateLayoutAttributes (this=0x7fffbd86ac50, start=0x5a749d8, allAttributes=WTF::Vector of length 0, capacity 0, atCharacter=@0x7fffbd86abd4, lastCharacter=@0x7fffbd86abd2) at ../../Source/WebCore/rendering/svg/SVGTextLayoutAttributesBuilder.cpp:203
#11 0x00002b1dfc2fec3e in WebCore::SVGTextLayoutAttributesBuilder::buildLayoutAttributesForTextSubtree (this=0x7fffbd86ac50, textRoot=0x5a749d8) at ../../Source/WebCore/rendering/svg/SVGTextLayoutAttributesBuilder.cpp:58
#12 0x00002b1dfc2de13f in WebCore::RenderSVGText::layout (this=0x5a749d8) at ../../Source/WebCore/rendering/svg/RenderSVGText.cpp:135
#13 0x00002b1dfc2e786a in WebCore::SVGRenderSupport::layoutChildren (start=0x5a72dc8, selfNeedsLayout=true) at ../../Source/WebCore/rendering/svg/SVGRenderSupport.cpp:239
#14 0x00002b1dfc2b7227 in WebCore::RenderSVGContainer::layout (this=0x5a72dc8) at ../../Source/WebCore/rendering/svg/RenderSVGContainer.cpp:64
#15 0x00002b1dfc2e786a in WebCore::SVGRenderSupport::layoutChildren (start=0x5a728c8, selfNeedsLayout=true) at ../../Source/WebCore/rendering/svg/SVGRenderSupport.cpp:239
#16 0x00002b1dfc2b7227 in WebCore::RenderSVGContainer::layout (this=0x5a728c8) at ../../Source/WebCore/rendering/svg/RenderSVGContainer.cpp:64
#17 0x00002b1dfc2e786a in WebCore::SVGRenderSupport::layoutChildren (start=0x5a70718, selfNeedsLayout=true) at ../../Source/WebCore/rendering/svg/SVGRenderSupport.cpp:239
#18 0x00002b1dfc2b7227 in WebCore::RenderSVGContainer::layout (this=0x5a70718) at ../../Source/WebCore/rendering/svg/RenderSVGContainer.cpp:64
#19 0x00002b1dfc2e786a in WebCore::SVGRenderSupport::layoutChildren (start=0x5a6dc28, selfNeedsLayout=true) at ../../Source/WebCore/rendering/svg/SVGRenderSupport.cpp:239
#20 0x00002b1dfc2dbc82 in WebCore::RenderSVGRoot::layout (this=0x5a6dc28) at ../../Source/WebCore/rendering/svg/RenderSVGRoot.cpp:240
#21 0x00002b1dfc173147 in WebCore::RenderBlock::layoutBlockChild (this=0x5a51a58, child=0x5a6dc28, marginInfo=..., previousFloatLogicalBottom=@0x7fffbd86b51c, maxFloatLogicalBottom=@0x7fffbd86b674) at ../../Source/WebCore/rendering/RenderBlock.cpp:1977
#22 0x00002b1dfc172d5f in WebCore::RenderBlock::layoutBlockChildren (this=0x5a51a58, relayoutChildren=true, maxFloatLogicalBottom=@0x7fffbd86b674) at ../../Source/WebCore/rendering/RenderBlock.cpp:1915
#23 0x00002b1dfc16fc96 in WebCore::RenderBlock::layoutBlock (this=0x5a51a58, relayoutChildren=true, pageLogicalHeight=0) at ../../Source/WebCore/rendering/RenderBlock.cpp:1238
#24 0x00002b1dfc16f59e in WebCore::RenderBlock::layout (this=0x5a51a58) at ../../Source/WebCore/rendering/RenderBlock.cpp:1134
#25 0x00002b1dfc27a065 in WebCore::RenderView::layout (this=0x5a51a58) at ../../Source/WebCore/rendering/RenderView.cpp:130
#26 0x00002b1dfc00601c in WebCore::FrameView::layout (this=0x5a01600, allowSubtree=true) at ../../Source/WebCore/page/FrameView.cpp:1000
#27 0x00002b1dfbbe8e3b in WebCore::Document::updateLayout (this=0x5a3c910) at ../../Source/WebCore/dom/Document.cpp:1618
#28 0x00002b1dfbbe8f1c in WebCore::Document::updateLayoutIgnorePendingStylesheets (this=0x5a3c910) at ../../Source/WebCore/dom/Document.cpp:1649
#29 0x00002b1dfbcee84b in WebCore::Editor::Command::execute (this=0x7fffbd86bac0, parameter="(null)", triggeringEvent=0x0) at ../../Source/WebCore/editing/EditorCommand.cpp:1644
#30 0x00002b1dfbbf1aef in WebCore::Document::execCommand (this=0x5a3c910, commandName="SelectAll", userInterface=false, value="(null)") at ../../Source/WebCore/dom/Document.cpp:3923
#31 0x00002b1dfc595884 in WebCore::jsDocumentPrototypeFunctionExecCommand (exec=0x2b1e50014080) at DerivedSources/WebCore/JSDocument.cpp:2424
#32 0x00002b1e100011e8 in ?? ()
#33 0x00007fffbd86bc70 in ?? ()
#34 0x00002b1e10010f0b in ?? ()
#35 0x00007fffbd86bc00 in ?? ()
#36 0x00002b1e50435e48 in ?? ()
#37 0x0000000005a7e8f0 in ?? ()
#38 0x00002b1d00000001 in ?? ()
#39 0x00002b1e50435b38 in ?? ()
#40 0x00007fffbd86bc20 in ?? ()
#41 0x00007fffbd86bc30 in ?? ()
#42 0x0000000000435607 in JSC::JSValue::decode (ptr=0x5a5cc63) at ../../Source/JavaScriptCore/runtime/JSValueInlineMethods.h:369
#43 0x00002b1dfab82329 in JSC::JITCode::execute (this=0x2b1e50438780, registerFile=0x237d548, callFrame=0x2b1e50014038, globalData=0x2952b20) at ../../Source/JavaScriptCore/jit/JITCode.h:77
#44 0x00002b1dfab7e727 in JSC::Interpreter::execute (this=0x237d530, program=0x2b1e50438768, callFrame=0x2b1e5042d370, scopeChain=0x2b1e50435b38, thisObj=0x2b1e5041c168) at ../../Source/JavaScriptCore/interpreter/Interpreter.cpp:778
#45 0x00002b1dfac17a6e in JSC::evaluate (exec=0x2b1e5042d370, scopeChain=0x2b1e50435b38, source=..., thisValue=...) at ../../Source/JavaScriptCore/runtime/Completion.cpp:64
#46 0x00002b1dfba2a321 in WebCore::JSMainThreadExecState::evaluate (exec=0x2b1e5042d370, chain=0x2b1e50435b38, source=..., thisValue=...) at ../../Source/WebCore/bindings/js/JSMainThreadExecState.h:54
#47 0x00002b1dfba5bf22 in WebCore::ScriptController::evaluateInWorld (this=0x22fad08, sourceCode=..., world=0x29592f0) at ../../Source/WebCore/bindings/js/ScriptController.cpp:143
#48 0x00002b1dfba5c0e2 in WebCore::ScriptController::evaluate (this=0x22fad08, sourceCode=...) at ../../Source/WebCore/bindings/js/ScriptController.cpp:166
#49 0x00002b1dfbc867ce in WebCore::ScriptElement::executeScript (this=0x5a7f040, sourceCode=...) at ../../Source/WebCore/dom/ScriptElement.cpp:285
#50 0x00002b1dfbc863c8 in WebCore::ScriptElement::prepareScript (this=0x5a7f040, scriptStartPosition=..., supportLegacyTypes=WebCore::ScriptElement::AllowLegacyTypeInTypeAttribute) at ../../Source/WebCore/dom/ScriptElement.cpp:241
#51 0x00002b1dfbcaeefb in WebCore::XMLDocumentParser::endElementNs (this=0x5a52690) at ../../Source/WebCore/dom/XMLDocumentParserLibxml2.cpp:891
#52 0x00002b1dfbcafbad in WebCore::endElementNsHandler (closure=0x5a5c5c0) at ../../Source/WebCore/dom/XMLDocumentParserLibxml2.cpp:1119
#53 0x00002b1e051902f3 in ?? () from /usr/lib/libxml2.so.2
#54 0x00002b1e0519c9e9 in ?? () from /usr/lib/libxml2.so.2
#55 0x00002b1e0519e12b in xmlParseChunk () from /usr/lib/libxml2.so.2
#56 0x00002b1dfbcadfba in WebCore::XMLDocumentParser::doWrite (this=0x5a52690, parseString="<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1 Basic//EN\" \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11-basic.dtd\">\n\n<!--", '=' <repeats 70 times>, "-->\n<!--=  Copyright 2000 World Wid"...) at ../../Source/WebCore/dom/XMLDocumentParserLibxml2.cpp:666
#57 0x00002b1dfbca9a63 in WebCore::XMLDocumentParser::append (this=0x5a52690, s=...) at ../../Source/WebCore/dom/XMLDocumentParser.cpp:132
#58 0x00002b1dfbbd507c in WebCore::DecodedDataDocumentParser::appendBytes (this=0x5a52690, writer=0x5a3f870, data=0x56cecc0 "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1 Basic//EN\" \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11-basic.dtd\">\n\n<!--", '=' <repeats 45 times>..., length=4691) at ../../Source/WebCore/dom/DecodedDataDocumentParser.cpp:50
#59 0x00002b1dfbf415fa in WebCore::DocumentWriter::addData (this=0x5a3f870, bytes=0x56cecc0 "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1 Basic//EN\" \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11-basic.dtd\">\n\n<!--", '=' <repeats 45 times>..., length=4691) at ../../Source/WebCore/loader/DocumentWriter.cpp:203
#60 0x00002b1dfbf359ef in WebCore::DocumentLoader::commitData (this=0x5a3f770, bytes=0x56cecc0 "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1 Basic//EN\" \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11-basic.dtd\">\n\n<!--", '=' <repeats 45 times>..., length=4691) at ../../Source/WebCore/loader/DocumentLoader.cpp:321
#61 0x00002b1dfb8cba55 in WebKit::FrameLoaderClient::committedLoad (this=0x2354ba0, loader=0x5a3f770, data=0x56cecc0 "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1 Basic//EN\" \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11-basic.dtd\">\n\n<!--", '=' <repeats 45 times>..., length=4691) at ../../Source/WebKit/gtk/WebCoreSupport/FrameLoaderClientGtk.cpp:320
#62 0x00002b1dfbf358c7 in WebCore::DocumentLoader::commitLoad (this=0x5a3f770, data=0x56cecc0 "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1 Basic//EN\" \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11-basic.dtd\">\n\n<!--", '=' <repeats 45 times>..., length=4691) at ../../Source/WebCore/loader/DocumentLoader.cpp:307
#63 0x00002b1dfbf35aaa in WebCore::DocumentLoader::receivedData (this=0x5a3f770, data=0x56cecc0 "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1 Basic//EN\" \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11-basic.dtd\">\n\n<!--", '=' <repeats 45 times>..., length=4691) at ../../Source/WebCore/loader/DocumentLoader.cpp:333
#64 0x00002b1dfbf7fda7 in WebCore::MainResourceLoader::addData (this=0x5a4ba60, data=0x56cecc0 "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1 Basic//EN\" \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11-basic.dtd\">\n\n<!--", '=' <repeats 45 times>..., length=4691, allAtOnce=false) at ../../Source/WebCore/loader/MainResourceLoader.cpp:168
#65 0x00002b1dfbf8d2a3 in WebCore::ResourceLoader::didReceiveData (this=0x5a4ba60, data=0x56cecc0 "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1 Basic//EN\" \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11-basic.dtd\">\n\n<!--", '=' <repeats 45 times>..., length=4691, encodedDataLength=4691, allAtOnce=false) at ../../Source/WebCore/loader/ResourceLoader.cpp:280
#66 0x00002b1dfbf811b6 in WebCore::MainResourceLoader::didReceiveData (this=0x5a4ba60, data=0x56cecc0 "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1 Basic//EN\" \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11-basic.dtd\">\n\n<!--", '=' <repeats 45 times>..., length=4691, encodedDataLength=4691, allAtOnce=false) at ../../Source/WebCore/loader/MainResourceLoader.cpp:464
#67 0x00002b1dfbf8dbba in WebCore::ResourceLoader::didReceiveData (this=0x5a4ba60, data=0x56cecc0 "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1 Basic//EN\" \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11-basic.dtd\">\n\n<!--", '=' <repeats 45 times>..., length=4691, encodedDataLength=4691) at ../../Source/WebCore/loader/ResourceLoader.cpp:443
#68 0x00002b1dfc4fb3e7 in WebCore::readCallback (source=0x2b1e0c015580, asyncResult=0x2b1e0c015460, data=0x0) at ../../Source/WebCore/platform/network/soup/ResourceHandleSoup.cpp:801
#69 0x00002b1dffaaab59 in async_ready_callback_wrapper (source_object=0x2b1e0c015580, res=0x2b1e0c015460, user_data=0x0) at /tmp/buildd/glib2.0-2.28.6/./gio/ginputstream.c:470
#70 0x00002b1dffabaa68 in complete_in_idle_cb_for_thread (_data=0x59bc340) at /tmp/buildd/glib2.0-2.28.6/./gio/gsimpleasyncresult.c:812
#71 0x00002b1e006284a3 in g_main_dispatch (context=0x22dea40) at /tmp/buildd/glib2.0-2.28.6/./glib/gmain.c:2440
#72 g_main_context_dispatch (context=0x22dea40) at /tmp/buildd/glib2.0-2.28.6/./glib/gmain.c:3013
#73 0x00002b1e00628c80 in g_main_context_iterate (context=0x22dea40, block=1, dispatch=1, self=<value optimized out>) at /tmp/buildd/glib2.0-2.28.6/./glib/gmain.c:3091
#74 0x00002b1e006292f2 in g_main_loop_run (loop=0x59f2c00) at /tmp/buildd/glib2.0-2.28.6/./glib/gmain.c:3299
#75 0x00002b1dfe5642b7 in gtk_main () from /usr/lib/libgtk-x11-2.0.so.0
#76 0x000000000042a989 in runTest (testPathOrURL=...) at ../../Tools/DumpRenderTree/gtk/DumpRenderTree.cpp:705
#77 0x000000000042a026 in runTestingServerLoop () at ../../Tools/DumpRenderTree/gtk/DumpRenderTree.cpp:497
#78 0x000000000042c2f4 in main (argc=2, argv=0x7fffbd86d658) at ../../Tools/DumpRenderTree/gtk/DumpRenderTree.cpp:1183
Comment 1 Martin Robinson 2011-06-20 23:05:13 PDT
Unskipping these tests as they should now be passing.

*** This bug has been marked as a duplicate of bug 62942 ***