Bug 82232

Summary: Layout Test in svg are failing
Product: WebKit Reporter: Emil A Eklund <eae>
Component: Tools / TestsAssignee: Nobody <webkit-unassigned>
Status: RESOLVED FIXED    
Severity: Normal CC: dglazkov, dpranke, morrita, schenney, zimmermann
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on: 78315    
Bug Blocks:    

Description Emil A Eklund 2012-03-26 12:17:39 PDT
The following layout test are failing on SNOWLEOPARD DEBUG

svg/custom/empty-merge.svg
svg/clip-path/clip-in-mask-objectBoundingBox.svg
svg/as-image/animated-svg-as-image-same-image.html
svg/as-background-image/background-image-tiled.html

Probable cause:

Unknown
Comment 1 Stephen Chenney 2012-04-02 09:13:32 PDT
Committed r112893: <http://trac.webkit.org/changeset/112893>
Comment 2 Stephen Chenney 2012-04-02 09:14:38 PDT
It seems that a crash still exists when SVG is used as an image.

svg/as-image/animated-svg-as-image-same-image.html = PASS IMAGE CRASH
svg/as-background-image/background-image-tiled.html = PASS CRASH
svg/as-image/svg-as-image.html = CRASH
Comment 3 Stephen Chenney 2012-04-02 09:31:54 PDT
The comment on Bug 81631 indicates that the failures in SVG as image tests on Mac are due to Bug 82505. Marking this as a dependent for future tracking.
Comment 4 Stephen Chenney 2012-04-02 10:20:56 PDT
The stack traces for these are not like 82505, so I do not thing they are related. The crashes do have a common stack:

crash log for DumpRenderTree (pid 1242):
STDOUT: <empty>
STDERR: ASSERTION FAILED: !needsLayout()
STDERR: /b/build/slave/webkit-mac-latest-dbg/build/src/third_party/WebKit/Source/WebCore/WebCore.gyp/../page/FrameView.cpp(2968) : virtual void WebCore::FrameView::paintContents(WebCore::GraphicsContext *, const WebCore::IntRect &)
STDERR: 1   0x4ec3e2ea WebCore::FrameView::paintContents(WebCore::GraphicsContext*, WebCore::IntRect const&)
STDERR: 2   0x4de9e52c WebCore::ScrollView::paint(WebCore::GraphicsContext*, WebCore::IntRect const&)
STDERR: 3   0x4f78a233 WebCore::SVGImage::draw(WebCore::GraphicsContext*, WebCore::FloatRect const&, WebCore::FloatRect const&, WebCore::ColorSpace, WebCore::CompositeOperator)
STDERR: 4   0x4f789c7e WebCore::SVGImage::drawSVGToImageBuffer(WebCore::ImageBuffer*, WebCore::IntSize const&, float, WebCore::SVGImage::ShouldClearBuffer)
STDERR: 5   0x4f77fe9d WebCore::SVGImageCache::redraw()
STDERR: 6   0x4f77fca5 WebCore::SVGImageCache::imageContentChanged()
STDERR: 7   0x4eb6fe1b WebCore::CachedImage::changedInRect(WebCore::Image const*, WebCore::IntRect const&)
STDERR: 8   0x4eb6fe96 non-virtual thunk to WebCore::CachedImage::changedInRect(WebCore::Image const*, WebCore::IntRect const&)
STDERR: 9   0x4f78f3f5 WebCore::SVGImageChromeClient::invalidateContentsAndRootView(WebCore::IntRect const&, bool)
STDERR: 10  0x4ebb624e WebCore::Chrome::invalidateContentsAndRootView(WebCore::IntRect const&, bool)
STDERR: 11  0x4de9d6de WebCore::ScrollView::repaintContentRectangle(WebCore::IntRect const&, bool)
STDERR: 12  0x4ec3a4b9 WebCore::FrameView::doDeferredRepaints()
STDERR: 13  0x4ec36612 WebCore::FrameView::endDeferredRepaints()
STDERR: 14  0x4ec34efe WebCore::FrameView::layout(bool)
STDERR: 15  0x4ec303a2 WebCore::FrameView::layoutTimerFired(WebCore::Timer<WebCore::FrameView>*)
STDERR: 16  0x4ec52737 WebCore::Timer<WebCore::FrameView>::fired()
STDERR: 17  0x4deb444e WebCore::ThreadTimers::sharedTimerFiredInternal()
STDERR: 18  0x4deb41df WebCore::ThreadTimers::sharedTimerFired()
STDERR: 19  0x4fb76fe9 webkit_glue::WebKitPlatformSupportImpl::DoTimeout()
STDERR: 20  0x4fb78174 base::internal::RunnableAdapter<void (webkit_glue::WebKitPlatformSupportImpl::*)()>::Run(webkit_glue::WebKitPlatformSupportImpl*)
STDERR: 21  0x4fb78073 base::internal::InvokeHelper<false, void, base::internal::RunnableAdapter<void (webkit_glue::WebKitPlatformSupportImpl::*)()>, void ()(webkit_glue::WebKitPlatformSupportImpl*)>::MakeItSo(base::internal::RunnableAdapter<void (webkit_glue::WebKitPlatformSupportImpl::*)()>, webkit_glue::WebKitPlatformSupportImpl*)
STDERR: 22  0x4fb77fb3 base::internal::Invoker<1, base::internal::BindState<base::internal::RunnableAdapter<void (webkit_glue::WebKitPlatformSupportImpl::*)()>, void ()(webkit_glue::WebKitPlatformSupportImpl*), void ()(base::internal::UnretainedWrapper<webkit_glue::WebKitPlatformSupportImpl>)>, void ()(webkit_glue::WebKitPlatformSupportImpl*)>::Run(base::internal::BindStateBase*)
STDERR: 23  0x4c6385cb base::Callback<void ()()>::Run() const
STDERR: 24  0x4c6e6eeb base::Timer::RunScheduledTask()
STDERR: 25  0x4c6e70f9 base::BaseTimerTaskInternal::Run()
STDERR: 26  0x4c6e79c4 base::internal::RunnableAdapter<void (base::BaseTimerTaskInternal::*)()>::Run(base::BaseTimerTaskInternal*)
STDERR: 27  0x4c6e78c3 base::internal::InvokeHelper<false, void, base::internal::RunnableAdapter<void (base::BaseTimerTaskInternal::*)()>, void ()(base::BaseTimerTaskInternal*)>::MakeItSo(base::internal::RunnableAdapter<void (base::BaseTimerTaskInternal::*)()>, base::BaseTimerTaskInternal*)
STDERR: 28  0x4c6e77fe base::internal::Invoker<1, base::internal::BindState<base::internal::RunnableAdapter<void (base::BaseTimerTaskInternal::*)()>, void ()(base::BaseTimerTaskInternal*), void ()(base::internal::OwnedWrapper<base::BaseTimerTaskInternal>)>, void ()(base::BaseTimerTaskInternal*)>::Run(base::internal::BindStateBase*)
STDERR: 29  0x4c6385cb base::Callback<void ()()>::Run() const
STDERR: 30  0x4c635cee MessageLoop::RunTask(base::PendingTask const&)
STDERR: 31  0x4c636091 MessageLoop::DeferOrRunPendingTask(base::PendingTask const&)
STDERR: [1242:-1602534080:1979314845368:ERROR:process_util_posix.cc(142)] Received signal 11
STDERR: 	0   DumpRenderTree                      0x4c5d3f1f base::debug::StackTrace::StackTrace() + 63
STDERR: 	1   DumpRenderTree                      0x4c5d3ebb base::debug::StackTrace::StackTrace() + 43
STDERR: 	2   DumpRenderTree                      0x4c6887c7 base::(anonymous namespace)::StackDumpSignalHandler(int, __siginfo*, __darwin_ucontext*) + 295
STDERR: 	3   libSystem.B.dylib                   0x9603e05b _sigtramp + 43
STDERR: 	4   ???                                 0xffffffff 0x0 + 4294967295
STDERR: 	5   DumpRenderTree                      0x4de9e52c WebCore::ScrollView::paint(WebCore::GraphicsContext*, WebCore::IntRect const&) + 1068
STDERR: 	6   DumpRenderTree                      0x4f78a233 WebCore::SVGImage::draw(WebCore::GraphicsContext*, WebCore::FloatRect const&, WebCore::FloatRect const&, WebCore::ColorSpace, WebCore::CompositeOperator) + 1107
STDERR: 	7   DumpRenderTree                      0x4f789c7e WebCore::SVGImage::drawSVGToImageBuffer(WebCore::ImageBuffer*, WebCore::IntSize const&, float, WebCore::SVGImage::ShouldClearBuffer) + 1006
STDERR: 	8   DumpRenderTree                      0x4f77fe9d WebCore::SVGImageCache::redraw() + 445
STDERR: 	9   DumpRenderTree                      0x4f77fca5 WebCore::SVGImageCache::imageContentChanged() + 293
STDERR: 	10  DumpRenderTree                      0x4eb6fe1b WebCore::CachedImage::changedInRect(WebCore::Image const*, WebCore::IntRect const&) + 155
STDERR: 	11  DumpRenderTree                      0x4eb6fe96 non-virtual thunk to WebCore::CachedImage::changedInRect(WebCore::Image const*, WebCore::IntRect const&) + 54
STDERR: 	12  DumpRenderTree                      0x4f78f3f5 WebCore::SVGImageChromeClient::invalidateContentsAndRootView(WebCore::IntRect const&, bool) + 165
STDERR: 	13  DumpRenderTree                      0x4ebb624e WebCore::Chrome::invalidateContentsAndRootView(WebCore::IntRect const&, bool) + 94
STDERR: 	14  DumpRenderTree                      0x4de9d6de WebCore::ScrollView::repaintContentRectangle(WebCore::IntRect const&, bool) + 414
STDERR: 	15  DumpRenderTree                      0x4ec3a4b9 WebCore::FrameView::doDeferredRepaints() + 345
STDERR: 	16  DumpRenderTree                      0x4ec36612 WebCore::FrameView::endDeferredRepaints() + 402
STDERR: 	17  DumpRenderTree                      0x4ec34efe WebCore::FrameView::layout(bool) + 3726
STDERR: 	18  DumpRenderTree                      0x4ec303a2 WebCore::FrameView::layoutTimerFired(WebCore::Timer<WebCore::FrameView>*) + 66
STDERR: 	19  DumpRenderTree                      0x4ec52737 WebCore::Timer<WebCore::FrameView>::fired() + 135
STDERR: 	20  DumpRenderTree                      0x4deb444e WebCore::ThreadTimers::sharedTimerFiredInternal() + 334
STDERR: 	21  DumpRenderTree                      0x4deb41df WebCore::ThreadTimers::sharedTimerFired() + 47
STDERR: 	22  DumpRenderTree                      0x4fb76fe9 webkit_glue::WebKitPlatformSupportImpl::DoTimeout() + 73
STDERR: 	23  DumpRenderTree                      0x4fb78174 base::internal::RunnableAdapter<void (webkit_glue::WebKitPlatformSupportImpl::*)()>::Run(webkit_glue::WebKitPlatformSupportImpl*) + 132
STDERR: 	24  DumpRenderTree                      0x4fb78073 base::internal::InvokeHelper<false, void, base::internal::RunnableAdapter<void (webkit_glue::WebKitPlatformSupportImpl::*)()>, void ()(webkit_glue::WebKitPlatformSupportImpl*)>::MakeItSo(base::internal::RunnableAdapter<void (webkit_glue::WebKitPlatformSupportImpl::*)()>, webkit_glue::WebKitPlatformSupportImpl*) + 67
STDERR: 	25  DumpRenderTree                      0x4fb77fb3 base::internal::Invoker<1, base::internal::BindState<base::internal::RunnableAdapter<void (webkit_glue::WebKitPlatformSupportImpl::*)()>, void ()(webkit_glue::WebKitPlatformSupportImpl*), void ()(base::internal::UnretainedWrapper<webkit_glue::WebKitPlatformSupportImpl>)>, void ()(webkit_glue::WebKitPlatformSupportImpl*)>::Run(base::internal::BindStateBase*) + 115
STDERR: 	26  DumpRenderTree                      0x4c6385cb base::Callback<void ()()>::Run() const + 75
STDERR: 	27  DumpRenderTree                      0x4c6e6eeb base::Timer::RunScheduledTask() + 363
STDERR: 	28  DumpRenderTree                      0x4c6e70f9 base::BaseTimerTaskInternal::Run() + 89
STDERR: 	29  DumpRenderTree                      0x4c6e79c4 base::internal::RunnableAdapter<void (base::BaseTimerTaskInternal::*)()>::Run(base::BaseTimerTaskInternal*) + 132
STDERR: 	30  DumpRenderTree                      0x4c6e78c3 base::internal::InvokeHelper<false, void, base::internal::RunnableAdapter<void (base::BaseTimerTaskInternal::*)()>, void ()(base::BaseTimerTaskInternal*)>::MakeItSo(base::internal::RunnableAdapter<void (base::BaseTimerTaskInternal::*)()>, base::BaseTimerTaskInternal*) + 67
STDERR: 	31  DumpRenderTree                      0x4c6e77fe base::internal::Invoker<1, base::internal::BindState<base::internal::RunnableAdapter<void (base::BaseTimerTaskInternal::*)()>, void ()(base::BaseTimerTaskInternal*), void ()(base::internal::OwnedWrapper<base::BaseTimerTaskInternal>)>, void ()(base::BaseTimerTaskInternal*)>::Run(base::internal::BindStateBase*) + 110
STDERR: 	32  DumpRenderTree                      0x4c6385cb base::Callback<void ()()>::Run() const + 75
STDERR: 	33  DumpRenderTree                      0x4c635cee MessageLoop::RunTask(base::PendingTask const&) + 846
STDERR: 	34  DumpRenderTree                      0x4c636091 MessageLoop::DeferOrRunPendingTask(base::PendingTask const&) + 97
STDERR: 	35  DumpRenderTree                      0x4c6362c8 MessageLoop::DoWork() + 312
STDERR: 	36  DumpRenderTree                      0x4c5a681b base::MessagePumpCFRunLoopBase::RunWork() + 107
STDERR: 	37  DumpRenderTree                      0x4c5a5f12 base::MessagePumpCFRunLoopBase::RunWorkSource(void*) + 50
STDERR: 	38  CoreFoundation                      0x980de42b __CFRunLoopDoSources0 + 1563
STDERR: 	39  CoreFoundation                      0x980dbeef __CFRunLoopRun + 1071
STDERR: 	40  CoreFoundation                      0x980db3c4 CFRunLoopRunSpecific + 452
STDERR: 	41  CoreFoundation                      0x980db1f1 CFRunLoopRunInMode + 97
STDERR: 	42  HIToolbox                           0x9311ae04 RunCurrentEventLoopInMode + 392
STDERR: 	43  HIToolbox                           0x9311abb9 ReceiveNextEventCommon + 354
STDERR: 	44  HIToolbox                           0x9311aa3e BlockUntilNextEventMatchingListInMode + 81
STDERR: 	45  AppKit                              0x965d6595 _DPSNextEvent + 847
STDERR: 	46  AppKit                              0x965d5dd6 -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] + 156
STDERR: 	47  AppKit                              0x965981f3 -[NSApplication run] + 821
STDERR: 	48  DumpRenderTree                      0x4c5a753e base::MessagePumpNSApplication::DoRun(base::MessagePump::Delegate*) + 350
STDERR: 	49  DumpRenderTree                      0x4c5a650d base::MessagePumpCFRunLoopBase::Run(base::MessagePump::Delegate*) + 189
STDERR: 	50  DumpRenderTree                      0x4c635653 MessageLoop::RunInternal() + 291
STDERR: 	51  DumpRenderTree                      0x4c63496b MessageLoop::RunHandler() + 43
STDERR: 	52  DumpRenderTree                      0x4c6348b0 MessageLoop::Run() + 64
STDERR: 	53  DumpRenderTree                      0x4c1eb627 webkit_support::RunMessageLoop() + 39
STDERR: 	54  DumpRenderTree                      0x4be93c82 TestShell::waitTestFinished() + 386
STDERR: 	55  DumpRenderTree                      0x4be84b7f TestShell::runFileTest(TestParams const&) + 975
STDERR: 	56  DumpRenderTree                      0x4be35ce3 runTest(TestShell&, TestParams&, std::string const&, bool) + 1395
STDERR: 	57  DumpRenderTree                      0x4be355aa main + 3722
STDERR: 	58  DumpRenderTree                      0x4be1470e start + 54
STDERR: ax: bbadbeef, bx: 465e3c0, cx: 8f1748a3, dx: 8f1748a3
STDERR: di: 5005d813, si: 50030fb1, bp: bfffc278, sp: bfffc1a0, ss: 23, flags: 210282
STDERR: ip: 4ec3e2f4, cs: 1b, ds: 23, es: 23, fs: 0, gs: f
Comment 5 Stephen Chenney 2012-04-02 12:54:03 PDT
*** Bug 80976 has been marked as a duplicate of this bug. ***
Comment 6 Stephen Chenney 2012-04-04 12:10:52 PDT
*** Bug 83183 has been marked as a duplicate of this bug. ***
Comment 7 Stephen Chenney 2012-04-04 12:11:28 PDT
Updated list. There may actually be more than one crash stack involved here.

BUGWK82232 MAC LINUX : svg/as-image/animated-svg-as-image-same-image.html = PASS IMAGE CRASH
BUGWK82232 MAC DEBUG : svg/as-background-image/background-image-tiled.html = PASS CRASH
BUGWK82232 MAC DEBUG : svg/as-image/svg-as-image.html = CRASH PASS
BUGWK82232 MAC DEBUG : svg/as-image/svg-non-integer-scaled-image.html = CRASH PASS
BUGWK82232 MAC DEBUG : svg/as-image/svg-nested.html = PASS CRASH
BUGWK82232 MAC DEBUG : svg/as-image/svg-image-leak-loader.html = PASS CRASH
BUGWK82232 MAC DEBUG : svg/custom/feComponentTransfer-Gamma.svg = PASS CRASH
BUGWK82232 MAC DEBUG : svg/as-background-image/svg-as-background-3.html = PASS CRASH
BUGWK82232 MAC DEBUG : svg/as-background-image/svg-as-background-with-relative-size.html = PASS CRASH
BUGWK82232 MAC DEBUG : svg/css/background-image-svg.html = PASS TEXT CRASH
BUGWK82232 MAC DEBUG : svg/zoom/page/zoom-foreign-content.svg = PASS TEXT CRASH
BUGWK82232 MAC DEBUG : svg/zoom/page/zoom-svg-as-background-with-relative-size.html = PASS CRASH
BUGWK82232 MAC DEBUG : svg/zoom/page/zoom-svg-as-image.html = PASS TEXT CRASH
BUGWK82232 MAC DEBUG : fast/writing-mode/body-writing-mode-propagation-blocked.html = PASS TEXT CRASH
BUGWK82232 MAC DEBUG : fast/writing-mode/body-direction-propagation.html = PASS CRASH
BUGWK82232 MAC DEBUG : fast/writing-mode/borders.html = PASS TEXT CRASH
BUGWK82232 MAC DEBUG : fast/writing-mode/broken-ideographic-font.html = CRASH PASS
BUGWK82232 MAC DEBUG : fast/writing-mode/japanese-ruby-horizontal-bt.html = PASS CRASH
BUGWK82232 MAC DEBUG : transitions/remove-transition-style.html = PASS TEXT CRASH
BUGWK82232 MAC DEBUG : traversal/node-iterator-prototype.html = PASS CRASH
BUGWK82232 MAC DEBUG : svg/zoom/page/zoom-replaced-intrinsic-ratio-001.htm = PASS CRASH
BUGWK82232 MAC DEBUG : fast/writing-mode/border-image-vertical-lr.html = PASS CRASH
BUGWK82232 MAC DEBUG : svg/as-background-image/animated-svg-as-background.html = PASS CRASH
BUGWK82232 MAC DEBUG : svg/as-image/same-image-two-instances.html = PASS IMAGE CRASH
BUGWK82232 MAC DEBUG : svg/as-image/svg-image-change-content-size.xhtml = PASS IMAGE CRASH
BUGWK82232 MAC DEBUG : svg/custom/circular-marker-reference-2.svg = PASS CRASH
BUGWK82232 MAC DEBUG : svg/as-image/animated-svg-as-image-no-fixed-intrinsic-size.html
Comment 8 Stephen Chenney 2012-04-05 08:09:10 PDT
*** Bug 82392 has been marked as a duplicate of this bug. ***
Comment 9 Stephen Chenney 2012-04-05 08:10:07 PDT
*** Bug 83185 has been marked as a duplicate of this bug. ***
Comment 10 Nikolas Zimmermann 2012-04-07 01:10:33 PDT
Is the problem gone now after Stephens fix?
Comment 11 Stephen Chenney 2012-04-07 07:08:54 PDT
*** Bug 81793 has been marked as a duplicate of this bug. ***
Comment 12 Stephen Chenney 2012-04-07 07:10:42 PDT
There have been no crashes since my change went in, and I'm quite confident that the crashes are resolved. Still, as the failures were intermittent I'm waiting a few days before closing out the bug and removing the expectations.
Comment 13 Stephen Chenney 2012-04-09 08:32:58 PDT
Committed r113579: <http://trac.webkit.org/changeset/113579>