DCHECK(equalURLs) failing in WebStateImpl::GetCurrentURL() |
||||
Issue descriptionChrome Version: 62.0.3202.0 OS: iOS 9.3 simulator on iPhone 5s What steps will reproduce the problem? (1) Log in youtube.com (2) Open the account page: https://m.youtube.com/feed/account (3) Click on the download arrow (4) Click cancel https://drive.google.com/open?id=0ByXziH_JVCGJNUtzZDVLSUNUZVE DCHECK(equalURLs) fails. GURL WebStateImpl::GetCurrentURL(URLVerificationTrustLevel* trust_level) const (lldb) bt * thread #1, name = 'CrWebMain', queue = 'com.apple.main-thread', stop reason = EXC_BREAKPOINT (code=EXC_I386_BPT, subcode=0x0) frame #0: 0x000000010513d4d4 Chromium`base::debug::BreakDebugger() at debugger_posix.cc:269 frame #1: 0x00000001051a415b Chromium`logging::LogMessage::~LogMessage(this=0x00007fff5c175180) at logging.cc:791 frame #2: 0x00000001051a0c35 Chromium`logging::LogMessage::~LogMessage(this=0x00007fff5c175180) at logging.cc:554 * frame #3: 0x0000000103ec2f8d Chromium`web::WebStateImpl::GetCurrentURL(this=0x0000614000103e40, trust_level=0x00007fff5c1753dc) const at web_state_impl.mm:662 frame #4: 0x000000010432e50d Chromium`(anonymous namespace)::GetPageURLAndCheckTrustLevel(web_state=0x0000614000103e40, page_url=0x00007fff5c175478) at password_controller.mm:255 frame #5: 0x000000010432e26b Chromium`::-[PasswordController webState:didLoadPageWithSuccess:](self=0x00006080000bd120, _cmd="webState:didLoadPageWithSuccess:", webState=0x0000614000103e40, success=YES) at password_controller.mm:399 frame #6: 0x0000000103ed3721 Chromium`web::WebStateObserverBridge::PageLoaded(this=0x000060300015f310, load_completion_status=SUCCESS) at web_state_observer_bridge.mm:79 frame #7: 0x0000000103ebd51f Chromium`web::WebStateImpl::OnPageLoaded(this=0x0000614000103e40, url=0x00007fff5c175b80, load_success=true) at web_state_impl.mm:260 frame #8: 0x0000000103e5d1dc Chromium`::-[CRWWebController didFinishWithURL:loadSuccess:](self=0x000061700001fc00, _cmd="didFinishWithURL:loadSuccess:", currentURL=0x00007fff5c175b80, loadSuccess=YES) at crw_web_controller.mm:2060 frame #9: 0x0000000103e5cad5 Chromium`::-[CRWWebController loadCompleteWithSuccess:forNavigation:](self=0x000061700001fc00, _cmd="loadCompleteWithSuccess:forNavigation:", loadSuccess=YES, navigation=0x0000000000000000) at crw_web_controller.mm:2026 frame #10: 0x0000000103e5c155 Chromium`::-[CRWWebController didFinishNavigation:](self=0x000061700001fc00, _cmd="didFinishNavigation:", navigation=0x0000000000000000) at crw_web_controller.mm:1995 frame #11: 0x0000000103e681ef Chromium`::__70-[CRWWebController handleWindowHistoryDidReplaceStateMessage:context:]_block_invoke(.block_descriptor=<unavailable>, (null)=0x0000000000000000, (null)=0x0000000000000000) at crw_web_controller.mm:2698 frame #12: 0x00000001145a01db WebKit`std::__1::__function::__func<-[WKWebView evaluateJavaScript:completionHandler:]::$_0, std::__1::allocator<-[WKWebView evaluateJavaScript:completionHandler:]::$_0>, void (API::SerializedScriptValue*, bool, WebKit::CallbackBase::Error)>::operator()(API::SerializedScriptValue*&&, bool&&, WebKit::CallbackBase::Error&&) + 361 frame #13: 0x00000001144d4a59 WebKit`WebKit::GenericCallback<API::SerializedScriptValue*, bool>::performCallbackWithReturnValue(API::SerializedScriptValue*, bool) + 59 frame #14: 0x00000001144ce4be WebKit`WebKit::WebPageProxy::scriptValueCallback(IPC::DataReference const&, bool, unsigned long long) + 152 frame #15: 0x00000001144e9db2 WebKit`void IPC::handleMessage<Messages::WebPageProxy::ScriptValueCallback, WebKit::WebPageProxy, void (WebKit::WebPageProxy::*)(IPC::DataReference const&, bool, unsigned long long)>(IPC::MessageDecoder&, WebKit::WebPageProxy*, void (WebKit::WebPageProxy::*)(IPC::DataReference const&, bool, unsigned long long)) + 113 frame #16: 0x000000011439acd7 WebKit`IPC::MessageReceiverMap::dispatchMessage(IPC::Connection&, IPC::MessageDecoder&) + 113 frame #17: 0x000000011451d270 WebKit`WebKit::WebProcessProxy::didReceiveMessage(IPC::Connection&, IPC::MessageDecoder&) + 24 frame #18: 0x0000000114358d76 WebKit`IPC::Connection::dispatchMessage(std::__1::unique_ptr<IPC::MessageDecoder, std::__1::default_delete<IPC::MessageDecoder> >) + 102 frame #19: 0x000000011435b03e WebKit`IPC::Connection::dispatchOneMessage() + 114 frame #20: 0x000000011b7d5802 JavaScriptCore`WTF::RunLoop::performWork() + 898 frame #21: 0x000000011b7d5d12 JavaScriptCore`WTF::RunLoop::performWork(void*) + 34 frame #22: 0x0000000111650301 CoreFoundation`__CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 17 frame #23: 0x000000011164622c CoreFoundation`__CFRunLoopDoSources0 + 556 frame #24: 0x00000001116456e3 CoreFoundation`__CFRunLoopRun + 867 frame #25: 0x00000001116450f8 CoreFoundation`CFRunLoopRunSpecific + 488 frame #26: 0x00000001164d3ad2 GraphicsServices`GSEventRunModal + 161 frame #27: 0x0000000110066f09 UIKit`UIApplicationMain + 171 frame #28: 0x0000000103a89a03 Chromium`(anonymous namespace)::RunUIApplicationMain(argc=1, argv=0x00007fff5c1775c0) at chrome_exe_main.mm:51 frame #29: 0x0000000103a894fe Chromium`main(argc=1, argv=0x00007fff5c1775c0) at chrome_exe_main.mm:74 frame #30: 0x00000001186f792d libdyld.dylib`start + 1 (lldb) p *URL error: indirection requires pointer operand ('GURL' invalid) (lldb) p URL (GURL) $0 = { spec_ = "https://m.youtube.com/#/feed/account" is_valid_ = true parsed_ = { scheme = (begin = 0, len = 5) username = (begin = 0, len = -1) password = (begin = 0, len = -1) host = (begin = 8, len = 13) port = (begin = 0, len = -1) path = (begin = 21, len = 1) query = (begin = 0, len = -1) ref = (begin = 23, len = 13) potentially_dangling_markup = false inner_parsed_ = 0x0000000000000000 } inner_url_ = { __ptr_ = { std::__1::__compressed_pair_elem<GURL *, 0, false> = { __value_ = 0x0000000000000000 } } } }
,
Aug 31 2017
,
Dec 15 2017
Could not reproduce the problem, but I also was not sure about the steps (did not have access to the video). We landed many fixes around this DCHECK, so this might be fixed now. Jerome, could you please take a look. Thanks!
,
Dec 15 2017
Sorry by "take a look" I meant "please check if still reproducible"
,
Dec 18 2017
I can't reproduce. |
||||
►
Sign in to add a comment |
||||
Comment 1 by jlebel@chromium.org
, Aug 31 2017