Occasional iOS crash in startURLSchemeTask on ionic webview plugin

We’re using cordova-plugin-ionic-webview. On rare occasions (~1% of users) we’re seeing an iOS crash in the startURLSchemeTask method of IONAssetHandler.m, line 23, which is specifically this statement I believe:

NSURL * url = urlSchemeTask.request.URL;

Anybody have an idea what could be going on that would cause an occasional crash from this line? Is this strictly something internal to Ionic/Cordova, or could it be something our app is doing wrong?

Here is stack trace:

Crashed: com.apple.main-thread
0  WebCore                        0x19e912b4c WebCore::blobRegistry() + 20
1  WebCore                        0x19e912b48 WebCore::blobRegistry() + 16
2  WebCore                        0x19e93d8a4 WebCore::createHTTPBodyCFReadStream(WebCore::FormData&) + 32
3  WebCore                        0x19e93e2e4 WebCore::setHTTPBody(_CFURLRequest*, WebCore::FormData*) + 56
4  WebCore                        0x19d8d2cf4 WebCore::ResourceRequest::doUpdatePlatformHTTPBody() + 120
5  WebCore                        0x19e937814 WebCore::ResourceRequestBase::updatePlatformRequest(WebCore::HTTPBodyUpdatePolicy) const + 68
6  WebCore                        0x19d8d1880 WebCore::ResourceRequest::nsURLRequest(WebCore::HTTPBodyUpdatePolicy) const + 20
7  WebKit                         0x19d17f1e8 WebKit::WebURLSchemeTask::nsRequest() const + 68
8  OurApp                         0x10245a3e0 -[IONAssetHandler webView:startURLSchemeTask:] + 23 (IONAssetHandler.m:23)
9  WebKit                         0x19d124fd0 WebKit::WebURLSchemeHandlerCocoa::platformStartTask(WebKit::WebPageProxy&, WebKit::WebURLSchemeTask&) + 128
10 WebKit                         0x19d17e138 WebKit::WebURLSchemeHandler::startTask(WebKit::WebPageProxy&, WebKit::WebProcessProxy&, unsigned long long, WebCore::ResourceRequest&&, WTF::CompletionHandler<void (WebCore::ResourceResponse const&, WebCore::ResourceError const&, WTF::Vector<char, 0ul, WTF::CrashOnOverflow, 16ul> const&)>&&) + 220
11 WebKit                         0x19d14f028 WebKit::WebPageProxy::startURLSchemeTaskShared(WTF::Ref<WebKit::WebProcessProxy, WTF::DumbPtrTraits<WebKit::WebProcessProxy> >&&, WebKit::URLSchemeTaskParameters&&) + 96
12 WebKit                         0x19d14ef90 WebKit::WebPageProxy::startURLSchemeTask(WebKit::URLSchemeTaskParameters&&) + 52
13 WebKit                         0x19d38ea9c WebKit::WebPageProxy::didReceiveMessage(IPC::Connection&, IPC::Decoder&) + 22332
14 WebKit                         0x19cf2d0e8 IPC::MessageReceiverMap::dispatchMessage(IPC::Connection&, IPC::Decoder&) + 104
15 WebKit                         0x19d17a630 WebKit::WebProcessProxy::didReceiveMessage(IPC::Connection&, IPC::Decoder&) + 32
16 WebKit                         0x19cf17740 IPC::Connection::dispatchMessage(std::__1::unique_ptr<IPC::Decoder, std::__1::default_delete<IPC::Decoder> >) + 204
17 WebKit                         0x19cf1a590 IPC::Connection::dispatchIncomingMessages() + 404
18 JavaScriptCore                 0x1a45dca6c WTF::RunLoop::performWork() + 276
19 JavaScriptCore                 0x1a45dcd2c WTF::RunLoop::performWork(void*) + 36
20 CoreFoundation                 0x1959d67e0 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 24
21 CoreFoundation                 0x1959d6738 __CFRunLoopDoSource0 + 80
22 CoreFoundation                 0x1959d5ed0 __CFRunLoopDoSources0 + 180
23 CoreFoundation                 0x1959d101c __CFRunLoopRun + 1080
24 CoreFoundation                 0x1959d08bc CFRunLoopRunSpecific + 464
25 GraphicsServices               0x19f83c328 GSEventRunModal + 104
26 UIKitCore                      0x199a666d4 UIApplicationMain + 1936
27 OurApp                         0x10232e474 main + 32 (main.m:32)
28 libdyld.dylib                  0x19585b460 start + 4
1 Like