Crash in loadErrorInNativeView when using WKBasedNavigationManager |
||
Issue descriptionSteps to reproduce: - Open NTP - Navigate to a unreachable page, e.g. http://localhost:8000/unreachable Cause: Network error like this is handled by [CRWWebController loadErrorInNativeView]. It presents the Native UI for network error and calls WKBasedNavigationManagerImpl::CommitPendingItem() to end the navigation. The crash is due to there not being a WKBackForwardListItem to commit the pending NavigationItem to in this case. Stack trace: frame #1: 0x0000000107f880b0 Chromium`logging::LogMessage::~LogMessage(this=0x00007fff5941e1e0) at logging.cc:846 frame #2: 0x0000000107f84a95 Chromium`logging::LogMessage::~LogMessage(this=0x00007fff5941e1e0) at logging.cc:575 * frame #3: 0x0000000106c68684 Chromium`(anonymous namespace)::SetNavigationItemInWKItem(wk_item=0x0000000000000000, item=unique_ptr<web::NavigationItemImpl, std::__1::default_delete<web::NavigationItemImpl> > @ 0x00007fff5941e3c0) at wk_based_navigation_manager_impl.mm:38 frame #4: 0x0000000106c68e9e Chromium`web::WKBasedNavigationManagerImpl::CommitPendingItem(this=0x00006100000b9980) at wk_based_navigation_manager_impl.mm:172 frame #5: 0x0000000106c7987c Chromium`::-[CRWWebController loadNativeViewWithSuccess:navigationContext:](self=0x00007fd753415e60, _cmd="loadNativeViewWithSuccess:navigationContext:", loadSuccess=NO, context=0x0000618000144c50) at crw_web_controller.mm:1704 frame #6: 0x0000000106c79e1e Chromium`::-[CRWWebController loadErrorInNativeView:navigationContext:](self=0x00007fd753415e60, _cmd="loadErrorInNativeView:navigationContext:", error=domain: "NSURLErrorDomain" - code: 18446744073709550612, context=0x0000618000144c50) at crw_web_controller.mm:1743 frame #7: 0x0000000106c8c173 Chromium`::-[CRWWebController handleLoadError:forNavigation:](self=0x00007fd753415e60, _cmd="handleLoadError:forNavigation:", error=domain: "NSURLErrorDomain" - code: 18446744073709550612, navigation=0x00007fd75bb2b400) at crw_web_controller.mm:2974 frame #8: 0x0000000106c9f31a Chromium`::-[CRWWebController webView:didFailProvisionalNavigation:withError:](self=0x00007fd753415e60, _cmd="webView:didFailProvisionalNavigation:withError:", webView=0x00007fd75c02ea00, navigation=0x00007fd75bb2b400, error=domain: "NSURLErrorDomain" - code: 18446744073709550612) at crw_web_controller.mm:4460 frame #9: 0x000000011860d038 WebKit`WebKit::NavigationState::NavigationClient::didFailProvisionalNavigationWithError(WebKit::WebPageProxy&, WebKit::WebFrameProxy&, API::Navigation*, WebCore::ResourceError const&, API::Object*) + 146 frame #10: 0x000000011876d1f5 WebKit`WebKit::WebPageProxy::didFailProvisionalLoadForFrame(unsigned long long, WebCore::SecurityOriginData const&, unsigned long long, WTF::String const&, WebCore::ResourceError const&, WebKit::UserData const&) + 333
,
Nov 30 2017
TabUsageRecorderTest/testOpenFromApp also seems to hit this bug.
,
Jan 3 2018
Landed crrev.com/c/847907 that fixes this issue (I put in the wrong bug number in the code review). |
||
►
Sign in to add a comment |
||
Comment 1 by danyao@chromium.org
, Nov 30 2017