Bug 255009
| Summary: | REGRESSION ( 262547@main?): ASSERTION FAILED: !m_size.isEmpty() : [ macOS Debug ] 4x fast/attachment tests are constant crashes. | ||
|---|---|---|---|
| Product: | WebKit | Reporter: | Bri Harris <bharris9> |
| Component: | New Bugs | Assignee: | Nobody <webkit-unassigned> |
| Status: | RESOLVED DUPLICATE | ||
| Severity: | Normal | CC: | sabouhallawa, simon.fraser, webkit-bot-watchers-bugzilla, webkit-bug-importer |
| Priority: | P2 | Keywords: | InRadar |
| Version: | Other | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
Bri Harris
The following 4 fast/attachment tests:
fast/attachment/attachment-action.html
fast/attachment/attachment-respects-css-size.html
fast/attachment/attachment-subtitle-resize.html
fast/attachment/cocoa/wide-attachment-rendering.html
are constant crashes on macOS Debug on WK2 only.
HISTORY:
https://results.webkit.org/?suite=layout-tests&suite=layout-tests&suite=layout-tests&suite=layout-tests&test=fast%2Fattachment%2Fattachment-action.html&test=fast%2Fattachment%2Fattachment-respects-css-size.html&test=fast%2Fattachment%2Fattachment-subtitle-resize.html&test=fast%2Fattachment%2Fcocoa%2Fwide-attachment-rendering.html
STDERR TEXT:
LocalCurrentGraphicsContext is setting the global context to nil because the provided GraphicsContext does not have a platform context (likely display list recording)
ASSERTION FAILED: !m_size.isEmpty()
/Volumes/Data/worker/Apple-Ventura-Debug-Build/build/Source/WebKit/Shared/ShareableBitmap.cpp(50) : WebKit::ShareableBitmapConfiguration::ShareableBitmapConfiguration(const WebCore::IntSize &, std::optional<DestinationColorSpace>, bool)
LocalCurrentGraphicsContext is setting the global context to nil because the provided GraphicsContext does not have a platform context (likely display list recording)
1 0x11a25d819 WTFCrash
2 0x151b3ae2b WTFCrashWithInfo(int, char const*, char const*, int)
3 0x153359cdd WebKit::ShareableBitmapConfiguration::ShareableBitmapConfiguration(WebCore::IntSize const&, std::__1::optional<WebCore::DestinationColorSpace>, bool)
4 0x153359dac WebKit::ShareableBitmapConfiguration::ShareableBitmapConfiguration(WebCore::IntSize const&, std::__1::optional<WebCore::DestinationColorSpace>, bool)
5 0x1532fcd11 WebKit::convertPlatformImageToBitmap(NSImage*, WebCore::FloatSize const&)
6 0x1532fcb9c WebKit::WebPageProxy::iconForAttachment(WTF::String const&, WTF::String const&, WTF::String const&, WebCore::FloatSize&)
7 0x1539342df WebKit::WebPageProxy::requestAttachmentIcon(WTF::String const&, WTF::String const&, WTF::String const&, WTF::String const&, WebCore::FloatSize const&)::$_12::operator()() const
8 0x15393414c WebKit::WebPageProxy::requestAttachmentIcon(WTF::String const&, WTF::String const&, WTF::String const&, WTF::String const&, WebCore::FloatSize const&)
9 0x1548a78f4 auto void IPC::callMemberFunction<WebKit::WebPageProxy, WebKit::WebPageProxy, void (WTF::String const&, WTF::String const&, WTF::String const&, WTF::String const&, WebCore::FloatSize const&), std::__1::tuple<WTF::String, WTF::String, WTF::String, WTF::String, WebCore::FloatSize> >(WebKit::WebPageProxy*, void (WebKit::WebPageProxy::*)(WTF::String const&, WTF::String const&, WTF::String const&, WTF::String const&, WebCore::FloatSize const&), std::__1::tuple<WTF::String, WTF::String, WTF::String, WTF::String, WebCore::FloatSize>&&)::'lambda'(auto&&...)::operator()<WTF::String, WTF::String, WTF::String, WTF::String, WebCore::FloatSize>(auto&&...) const
10 0x1548a776d decltype(static_cast<WebKit::WebPageProxy>(fp)(static_cast<WTF::String>(fp0), static_cast<WTF::String>(fp0), static_cast<WTF::String>(fp0), static_cast<WTF::String>(fp0), static_cast<WebCore::FloatSize>(fp0))) std::__1::__invoke_constexpr<void IPC::callMemberFunction<WebKit::WebPageProxy, WebKit::WebPageProxy, void (WTF::String const&, WTF::String const&, WTF::String const&, WTF::String const&, WebCore::FloatSize const&), std::__1::tuple<WTF::String, WTF::String, WTF::String, WTF::String, WebCore::FloatSize> >(WebKit::WebPageProxy*, void (WebKit::WebPageProxy::*)(WTF::String const&, WTF::String const&, WTF::String const&, WTF::String const&, WebCore::FloatSize const&), std::__1::tuple<WTF::String, WTF::String, WTF::String, WTF::String, WebCore::FloatSize>&&)::'lambda'(auto&&...), WTF::String, WTF::String, WTF::String, WTF::String, WebCore::FloatSize>(WebKit::WebPageProxy&&, WTF::String&&, WTF::String&&, WTF::String&&, WTF::String&&, WebCore::FloatSize&&)
11 0x1548a770e decltype(auto) std::__1::__apply_tuple_impl<void IPC::callMemberFunction<WebKit::WebPageProxy, WebKit::WebPageProxy, void (WTF::String const&, WTF::String const&, WTF::String const&, WTF::String const&, WebCore::FloatSize const&), std::__1::tuple<WTF::String, WTF::String, WTF::String, WTF::String, WebCore::FloatSize> >(WebKit::WebPageProxy*, void (WebKit::WebPageProxy::*)(WTF::String const&, WTF::String const&, WTF::String const&, WTF::String const&, WebCore::FloatSize const&), std::__1::tuple<WTF::String, WTF::String, WTF::String, WTF::String, WebCore::FloatSize>&&)::'lambda'(auto&&...), std::__1::tuple<WTF::String, WTF::String, WTF::String, WTF::String, WebCore::FloatSize>, 0ul, 1ul, 2ul, 3ul, 4ul>(WebKit::WebPageProxy&&, WebKit::WebPageProxy&&, std::__1::__tuple_indices<0ul, 1ul, 2ul, 3ul, 4ul>)
12 0x1548a7652 decltype(auto) std::__1::apply<void IPC::callMemberFunction<WebKit::WebPageProxy, WebKit::WebPageProxy, void (WTF::String const&, WTF::String const&, WTF::String const&, WTF::String const&, WebCore::FloatSize const&), std::__1::tuple<WTF::String, WTF::String, WTF::String, WTF::String, WebCore::FloatSize> >(WebKit::WebPageProxy*, void (WebKit::WebPageProxy::*)(WTF::String const&, WTF::String const&, WTF::String const&, WTF::String const&, WebCore::FloatSize const&), std::__1::tuple<WTF::String, WTF::String, WTF::String, WTF::String, WebCore::FloatSize>&&)::'lambda'(auto&&...), std::__1::tuple<WTF::String, WTF::String, WTF::String, WTF::String, WebCore::FloatSize> >(WebKit::WebPageProxy&&, WebKit::WebPageProxy&&)
13 0x1548a65fd void IPC::callMemberFunction<WebKit::WebPageProxy, WebKit::WebPageProxy, void (WTF::String const&, WTF::String const&, WTF::String const&, WTF::String const&, WebCore::FloatSize const&), std::__1::tuple<WTF::String, WTF::String, WTF::String, WTF::String, WebCore::FloatSize> >(WebKit::WebPageProxy*, void (WebKit::WebPageProxy::*)(WTF::String const&, WTF::String const&, WTF::String const&, WTF::String const&, WebCore::FloatSize const&), std::__1::tuple<WTF::String, WTF::String, WTF::String, WTF::String, WebCore::FloatSize>&&)
14 0x154814aa8 void IPC::handleMessage<Messages::WebPageProxy::RequestAttachmentIcon, WebKit::WebPageProxy, WebKit::WebPageProxy, void (WTF::String const&, WTF::String const&, WTF::String const&, WTF::String const&, WebCore::FloatSize const&)>(IPC::Connection&, IPC::Decoder&, WebKit::WebPageProxy*, void (WebKit::WebPageProxy::*)(WTF::String const&, WTF::String const&, WTF::String const&, WTF::String const&, WebCore::FloatSize const&))
15 0x154804185 WebKit::WebPageProxy::didReceiveMessage(IPC::Connection&, IPC::Decoder&)
16 0x154be04f3 IPC::MessageReceiverMap::dispatchMessage(IPC::Connection&, IPC::Decoder&)
17 0x153707f9c WebKit::AuxiliaryProcessProxy::dispatchMessage(IPC::Connection&, IPC::Decoder&)
18 0x153a46809 WebKit::WebProcessProxy::didReceiveMessage(IPC::Connection&, IPC::Decoder&)
19 0x154bb44ac IPC::Connection::dispatchMessage(IPC::Decoder&)
20 0x154bb48c0 IPC::Connection::dispatchMessage(std::__1::unique_ptr<IPC::Decoder, std::__1::default_delete<IPC::Decoder> >)
21 0x154bb5014 IPC::Connection::dispatchIncomingMessages()
22 0x154bd1a4d IPC::Connection::enqueueIncomingMessage(std::__1::unique_ptr<IPC::Decoder, std::__1::default_delete<IPC::Decoder> >)::$_16::operator()() const
23 0x154bd1999 WTF::Detail::CallableWrapper<IPC::Connection::enqueueIncomingMessage(std::__1::unique_ptr<IPC::Decoder, std::__1::default_delete<IPC::Decoder> >)::$_16, void>::call()
24 0x11a28d8a2 WTF::Function<void ()>::operator()() const
25 0x11a336bee WTF::RunLoop::performWork()
26 0x11a33c86e WTF::RunLoop::performWork(void*)
27 0x7ff8110e0b78 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__
28 0x7ff8110e0b27 __CFRunLoopDoSource0
29 0x7ff8110e0901 __CFRunLoopDoSources0
30 0x7ff8110df57b __CFRunLoopRun
31 0x7ff8110deb60 CFRunLoopRunSpecific
| Attachments | ||
|---|---|---|
| Add attachment proposed patch, testcase, etc. |
Radar WebKit Bug Importer
<rdar://problem/107631069>
Bri Harris
I was able to replicate these crashes on macOS Debug ToT as follows:
run-webkit-tests --root fast/attachment/attachment-action.html
I just repeated the command down the list and replicated the crash on all. I verified the crash log matches the assertion found on the results database as well.
Bri Harris
Test appears to have started crashing at 262547@main. I am attempting to verify if this is the regression point.
Bri Harris
I was able to verify that these tests are passing at 262546@main but not at 262548@main. I was not able to test directly on 262547@main but it seems likely related.
https://commits.webkit.org/262547@main
Ryan Haddad
(In reply to Bri Harris from comment #4)
> I was not able to test directly on 262547@main but it seems
> likely related.
>
> https://commits.webkit.org/262547@main
I agree, it looks like this commit is what added the failing assertion.
Simon Fraser (smfr)
This is being fixed via https://github.com/WebKit/WebKit/pull/12389
*** This bug has been marked as a duplicate of bug 255001 ***