NEW150897
ResourceUsageOverlay crashes in debug builds, seems to draw on non-main thread
https://bugs.webkit.org/show_bug.cgi?id=150897
Summary ResourceUsageOverlay crashes in debug builds, seems to draw on non-main thread
Blaze Burg
Reported 2015-11-04 10:34:59 PST
STEPS TO REPRODUCE: 1. Get a debug build 2. Enable the resource overlay 3. Immediate crash Representative stack trace: #0 0x000000011641c497 in ::WTFCrash() at /Users/bburg/repos/webkit-tot/OpenSource/Source/WTF/wtf/Assertions.cpp:321 #1 0x00000001182b0b49 in WebCore::FontCascadeFonts::primaryFont(WebCore::FontCascadeDescription const&) at /Users/bburg/repos/webkit-tot/OpenSource/Source/WebCore/platform/graphics/FontCascadeFonts.h:127 #2 0x00000001182b0ab9 in WebCore::FontCascade::primaryFont() const at /Users/bburg/repos/webkit-tot/OpenSource/Source/WebCore/platform/graphics/FontCascade.h:352 #3 0x000000011a466909 in unsigned int WebCore::WidthIterator::advanceInternal<WebCore::Latin1TextIterator>(WebCore::Latin1TextIterator&, WebCore::GlyphBuffer*) at /Users/bburg/repos/webkit-tot/OpenSource/Source/WebCore/platform/graphics/WidthIterator.cpp:209 #4 0x000000011a4662ca in WebCore::WidthIterator::advance(int, WebCore::GlyphBuffer*) at /Users/bburg/repos/webkit-tot/OpenSource/Source/WebCore/platform/graphics/WidthIterator.cpp:434 #5 0x0000000118923930 in WebCore::FontCascade::getGlyphsAndAdvancesForSimpleText(WebCore::TextRun const&, int, int, WebCore::GlyphBuffer&, WebCore::FontCascade::ForTextEmphasisOrNot) const at /Users/bburg/repos/webkit-tot/OpenSource/Source/WebCore/platform/graphics/FontCascade.cpp:1272 #6 0x000000011891fe0e in WebCore::FontCascade::drawSimpleText(WebCore::GraphicsContext&, WebCore::TextRun const&, WebCore::FloatPoint const&, int, int) const at /Users/bburg/repos/webkit-tot/OpenSource/Source/WebCore/platform/graphics/FontCascade.cpp:1297 #7 0x000000011891fc14 in WebCore::FontCascade::drawText(WebCore::GraphicsContext&, WebCore::TextRun const&, WebCore::FloatPoint const&, int, int, WebCore::FontCascade::CustomFontNotReadyAction) const at /Users/bburg/repos/webkit-tot/OpenSource/Source/WebCore/platform/graphics/FontCascade.cpp:325 #8 0x0000000118a8f3e3 in WebCore::GraphicsContext::drawText(WebCore::FontCascade const&, WebCore::TextRun const&, WebCore::FloatPoint const&, int, int) at /Users/bburg/repos/webkit-tot/OpenSource/Source/WebCore/platform/graphics/GraphicsContext.cpp:328 #9 0x000000011903f68a in WebCore::showText(WebCore::GraphicsContext&, float, float, WebCore::Color, WTF::String const&) at /Users/bburg/repos/webkit-tot/OpenSource/Source/WebCore/page/cocoa/ResourceUsageOverlayCocoa.mm:330 #10 0x000000011903e2ae in WebCore::ResourceUsageOverlay::draw(WebCore::GraphicsContext&) at /Users/bburg/repos/webkit-tot/OpenSource/Source/WebCore/page/cocoa/ResourceUsageOverlayCocoa.mm:350 #11 0x000000011903dfdb in -[WebOverlayLayer drawInContext:] at /Users/bburg/repos/webkit-tot/OpenSource/Source/WebCore/page/cocoa/ResourceUsageOverlayCocoa.mm:66 #12 0x00007fff990ea2dd in CABackingStoreUpdate_ () #13 0x00007fff990e9531 in ___ZN2CA5Layer8display_Ev_block_invoke () #14 0x00007fff990e8f1d in CA::Layer::display_() () #15 0x00007fff990dad05 in CA::Layer::display_if_needed(CA::Transaction*) () #16 0x00007fff990da82d in CA::Layer::layout_and_display_if_needed(CA::Transaction*) () #17 0x00007fff990d9d01 in CA::Context::commit_transaction(CA::Transaction*) () #18 0x00007fff990d994c in CA::Transaction::commit() () #19 0x0000000119040cde in WebCore::runSamplerThread(void*) at /Users/bburg/repos/webkit-tot/OpenSource/Source/WebCore/page/cocoa/ResourceUsageOverlayCocoa.mm:452 #20 0x0000000116486a79 in WTF::createThread(void (*)(void*), void*, char const*)::$_0::operator()() const at /Users/bburg/repos/webkit-tot/OpenSource/Source/WTF/wtf/Threading.cpp:81 #21 0x0000000116486a4d in decltype(std::__1::forward<WTF::createThread(void (*)(void*), void*, char const*)::$_0&>(fp)(std::__1::forward<>(fp0))) std::__1::__invoke<WTF::createThread(void (*)(void*), void*, char const*)::$_0&>(WTF::createThread(void (*)(void*), void*, char const*)::$_0&&&) [inlined] at /Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.11.xctoolchain/usr/bin/../include/c++/v1/__functional_base:415 #22 0x0000000116486a3c in void std::__1::__invoke_void_return_wrapper<void>::__call<WTF::createThread(void (*)(void*), void*, char const*)::$_0&>(WTF::createThread(void (*)(void*), void*, char const*)::$_0&&&) at /Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.11.xctoolchain/usr/bin/../include/c++/v1/__functional_base:440 #23 0x00000001164869ec in std::__1::__function::__func<WTF::createThread(void (*)(void*), void*, char const*)::$_0, std::__1::allocator<WTF::createThread(void (*)(void*), void*, char const*)::$_0>, void ()>::operator()() at /Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.11.xctoolchain/usr/bin/../include/c++/v1/functional:1407 #24 0x0000000115ea282a in std::__1::function<void ()>::operator()() const at /Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.11.xctoolchain/usr/bin/../include/c++/v1/functional:1793 #25 0x000000011648574e in WTF::threadEntryPoint(void*) at /Users/bburg/repos/webkit-tot/OpenSource/Source/WTF/wtf/Threading.cpp:58 #26 0x0000000116486ff1 in WTF::wtfThreadEntryPoint(void*) at /Users/bburg/repos/webkit-tot/OpenSource/Source/WTF/wtf/ThreadingPthreads.cpp:167 #27 0x00007fff936df9b1 in _pthread_body () #28 0x00007fff936df92e in _pthread_start () #29 0x00007fff936dd385 in thread_start ()
Attachments
Radar WebKit Bug Importer
Comment 1 2015-11-04 10:35:22 PST
Simon Fraser (smfr)
Comment 2 2015-11-04 10:41:31 PST
Didn't we warn you this would happen?
Andreas Kling
Comment 3 2015-11-04 10:59:21 PST
(In reply to comment #2) > Didn't we warn you this would happen? Sort of :|
Note You need to log in before you can comment on or make changes to this bug.