Bug 177599 - REGRESSION(r222595): Assertion failure in _preLoadedDataConformingToType
Summary: REGRESSION(r222595): Assertion failure in _preLoadedDataConformingToType
Status: RESOLVED DUPLICATE of bug 177594
Alias: None
Product: WebKit
Classification: Unclassified
Component: HTML Editing (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified iOS 11
: P2 Normal
Assignee: Nobody
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2017-09-28 02:18 PDT by Ryosuke Niwa
Modified: 2017-09-28 07:53 PDT (History)
2 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Ryosuke Niwa 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
Comment 1 Ryosuke Niwa 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
Comment 2 Ryosuke Niwa 2017-09-28 02:30:35 PDT
Committed r222606: <http://trac.webkit.org/changeset/222606>
Comment 3 Radar WebKit Bug Importer 2017-09-28 02:31:09 PDT
<rdar://problem/34709689>
Comment 4 Wenson Hsieh 2017-09-28 07:34:02 PDT
Let's revert this after https://bugs.webkit.org/show_bug.cgi?id=177594 lands.
Comment 5 Wenson Hsieh 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>
Comment 6 Wenson Hsieh 2017-09-28 07:53:52 PDT

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