RESOLVED DUPLICATE of bug 177594 177599
REGRESSION(r222595): Assertion failure in _preLoadedDataConformingToType
https://bugs.webkit.org/show_bug.cgi?id=177599
Summary REGRESSION(r222595): Assertion failure in _preLoadedDataConformingToType
Ryosuke Niwa
Reported 2017-09-28 02:18:59 PDT
I'm hitting an assertion inside _preLoadedDataConformingToType about _loadResults.size() and [_itemProviders count] having the same value. Thread 0 Crashed:: Dispatch queue: com.apple.main-thread 0 JavaScriptCore 0x0000000105f7c824 WTFCrash + 36 (Assertions.cpp:270) 1 com.apple.WebCore 0x0000000112ded883 -[WebItemProviderPasteboard _preLoadedDataConformingToType:forItemProviderAtIndex:] + 179 2 com.apple.WebCore 0x0000000112dedeef -[WebItemProviderPasteboard dataForPasteboardType:inItemSet:]::$_1::operator()(unsigned long, bool*) const + 111 (WebItemProviderPasteboard.mm:405) 3 com.apple.WebCore 0x0000000112dede79 __61-[WebItemProviderPasteboard dataForPasteboardType:inItemSet:]_block_invoke + 41 (WebItemProviderPasteboard.mm:400) 4 com.apple.Foundation 0x000000010f16c995 __NSIndexSetEnumerate + 671 5 com.apple.WebCore 0x0000000112dedd5b -[WebItemProviderPasteboard dataForPasteboardType:inItemSet:] + 283 (WebItemProviderPasteboard.mm:400) 6 com.apple.WebCore 0x0000000112dedc26 -[WebItemProviderPasteboard dataForPasteboardType:] + 166 (WebItemProviderPasteboard.mm:393) 7 com.apple.WebCore 0x0000000112204e1a WebCore::PlatformPasteboard::typesSafeForDOMToReadAndWrite() const + 1738 (PlatformPasteboardIOS.mm:457) 8 com.apple.WebKit 0x0000000108b9f6f5 WebKit::WebPasteboardProxy::typesSafeForDOMToReadAndWrite(WTF::String const&, WTF::Vector<WTF::String, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc>&) + 53 (WebPasteboardProxyCocoa.mm:144) 9 com.apple.WebKit 0x0000000108ba6a8e void IPC::callMemberFunctionImpl<WebKit::WebPasteboardProxy, void (WebKit::WebPasteboardProxy::*)(WTF::String const&, WTF::Vector<WTF::String, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc>&), std::__1::tuple<WTF::String>, 0ul, std::__1::tuple<WTF::Vector<WTF::String, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc> >, 0ul>(WebKit::WebPasteboardProxy*, void (WebKit::WebPasteboardProxy::*)(WTF::String const&, WTF::Vector<WTF::String, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc>&), std::__1::tuple<WTF::String>&&, std::__1::tuple<WTF::Vector<WTF::String, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc> >&, std::__1::integer_sequence<unsigned long, 0ul>, std::__1::integer_sequence<unsigned long, 0ul>) + 190 (HandleMessage.h:55) 10 com.apple.WebKit 0x0000000108ba69c8 void IPC::callMemberFunction<WebKit::WebPasteboardProxy, void (WebKit::WebPasteboardProxy::*)(WTF::String const&, WTF::Vector<WTF::String, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc>&), std::__1::tuple<WTF::String>, std::__1::integer_sequence<unsigned long, 0ul>, std::__1::tuple<WTF::Vector<WTF::String, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc> >, std::__1::integer_sequence<unsigned long, 0ul> >(std::__1::tuple<WTF::String>&&, std::__1::tuple<WTF::Vector<WTF::String, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc> >&, WebKit::WebPasteboardProxy*, void (WebKit::WebPasteboardProxy::*)(WTF::String const&, WTF::Vector<WTF::String, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc>&)) + 104 (HandleMessage.h:61) 11 com.apple.WebKit 0x0000000108ba2c49 void IPC::handleMessage<Messages::WebPasteboardProxy::TypesSafeForDOMToReadAndWrite, WebKit::WebPasteboardProxy, void (WebKit::WebPasteboardProxy::*)(WTF::String const&, WTF::Vector<WTF::String, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc>&)>(IPC::Decoder&, IPC::Encoder&, WebKit::WebPasteboardProxy*, void (WebKit::WebPasteboardProxy::*)(WTF::String const&, WTF::Vector<WTF::String, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc>&)) + 345 (HandleMessage.h:139) 12 com.apple.WebKit 0x0000000108ba10c0 WebKit::WebPasteboardProxy::didReceiveSyncMessage(IPC::Connection&, IPC::Decoder&, std::__1::unique_ptr<IPC::Encoder, std::__1::default_delete<IPC::Encoder> >&) + 1584 (WebPasteboardProxyMessageReceiver.cpp:148) 13 com.apple.WebKit 0x00000001083a06eb IPC::MessageReceiverMap::dispatchSyncMessage(IPC::Connection&, IPC::Decoder&, std::__1::unique_ptr<IPC::Encoder, std::__1::default_delete<IPC::Encoder> >&) + 235 (MessageReceiverMap.cpp:136) 14 com.apple.WebKit 0x000000010828ac3c WebKit::ChildProcessProxy::dispatchSyncMessage(IPC::Connection&, IPC::Decoder&, std::__1::unique_ptr<IPC::Encoder, std::__1::default_delete<IPC::Encoder> >&) + 60 (ChildProcessProxy.cpp:159) 15 com.apple.WebKit 0x0000000108c97c52 WebKit::WebProcessProxy::didReceiveSyncMessage(IPC::Connection&, IPC::Decoder&, std::__1::unique_ptr<IPC::Encoder, std::__1::default_delete<IPC::Encoder> >&) + 66 (WebProcessProxy.cpp:606) 16 com.apple.WebKit 0x0000000108c97d2c non-virtual thunk to WebKit::WebProcessProxy::didReceiveSyncMessage(IPC::Connection&, IPC::Decoder&, std::__1::unique_ptr<IPC::Encoder, std::__1::default_delete<IPC::Encoder> >&) + 60 17 com.apple.WebKit 0x0000000108299c00 IPC::Connection::dispatchSyncMessage(IPC::Decoder&) + 1952 (Connection.cpp:863) 18 com.apple.WebKit 0x000000010828fc89 IPC::Connection::dispatchMessage(std::__1::unique_ptr<IPC::Decoder, std::__1::default_delete<IPC::Decoder> >) + 649 (Connection.cpp:926) 19 com.apple.WebKit 0x000000010829a7ea IPC::Connection::dispatchOneMessage() + 1530 (Connection.cpp:959) 20 com.apple.WebKit 0x00000001082b23cd IPC::Connection::enqueueIncomingMessage(std::__1::unique_ptr<IPC::Decoder, std::__1::default_delete<IPC::Decoder> >)::$_14::operator()() + 29 (Connection.cpp:896) 21 com.apple.WebKit 0x00000001082b2329 WTF::Function<void ()>::CallableWrapper<IPC::Connection::enqueueIncomingMessage(std::__1::unique_ptr<IPC::Decoder, std::__1::default_delete<IPC::Decoder> >)::$_14>::call() + 25 (Function.h:101) 22 JavaScriptCore 0x0000000105fb162b WTF::Function<void ()>::operator()() const + 139 (Function.h:56) 23 JavaScriptCore 0x0000000105fd20f3 WTF::RunLoop::performWork() + 211 (RunLoop.cpp:107) 24 JavaScriptCore 0x0000000105fd2974 WTF::RunLoop::performWork(void*) + 36 (RunLoopCF.cpp:38) 25 com.apple.CoreFoundation 0x000000010f869c71 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 17 26 com.apple.CoreFoundation 0x000000010f909891 __CFRunLoopDoSource0 + 81 27 com.apple.CoreFoundation 0x000000010f84e589 __CFRunLoopDoSources0 + 185 28 com.apple.CoreFoundation 0x000000010f84db6f __CFRunLoopRun + 1279 29 com.apple.CoreFoundation 0x000000010f84d3f9 CFRunLoopRunSpecific + 409
Attachments
Ryosuke Niwa
Comment 1 2017-09-28 02:29:26 PDT
The following API tests encounter this assertion failure: $ ./Tools/Scripts/run-api-tests --debug --ios-simulator DataInteractionTests.DataTransferGetData Running build-api-tests UNEXPECTEDLY EXITED DataInteractionTests.DataTransferGetDataCannotReadPrivateArbitraryTypes UNEXPECTEDLY EXITED DataInteractionTests.DataTransferGetDataWhenDroppingCustomData UNEXPECTEDLY EXITED DataInteractionTests.DataTransferGetDataWhenDroppingImageWithFileURL UNEXPECTEDLY EXITED DataInteractionTests.DataTransferGetDataWhenDroppingPlainText UNEXPECTEDLY EXITED DataInteractionTests.DataTransferGetDataWhenDroppingRespectsPresentationStyle UNEXPECTEDLY EXITED DataInteractionTests.DataTransferGetDataWhenDroppingURL
Ryosuke Niwa
Comment 2 2017-09-28 02:30:35 PDT
Radar WebKit Bug Importer
Comment 3 2017-09-28 02:31:09 PDT
Wenson Hsieh
Comment 4 2017-09-28 07:34:02 PDT
Let's revert this after https://bugs.webkit.org/show_bug.cgi?id=177594 lands.
Wenson Hsieh
Comment 5 2017-09-28 07:53:24 PDT
Reverted r222606 for reason: The debug assertion hit in these API tests should be fixed by r222608. Committed r222609: <http://trac.webkit.org/changeset/222609>
Wenson Hsieh
Comment 6 2017-09-28 07:53:52 PDT
*** This bug has been marked as a duplicate of bug 177594 ***
Note You need to log in before you can comment on or make changes to this bug.