cefclient crash or incorrect display loading chrome://version

Issue #2967 resolved
Salvador Diaz Fau created an issue

What steps will reproduce the problem?

  • Run cefclient.exe --url=”about:blank”
  • Type “chrome://version” in the address box.
  • Press enter to load the version information.

What is the expected output? What do you see instead?

It should show the Chrome and CEF version information but it closes the application due to an “Illegal instruction - code c000001d” error.

What version of the product are you using? On what operating system?
CEF 83.3.12 on Windows 10 (64 bits)
http://opensource.spotify.com/cefbuilds/cef_binary_83.3.12%2Bg0889ff0%2Bchromium-83.0.4103.97_windows64_client.tar.bz2

Does the problem reproduce with the cefclient or cefsimple sample application at the same version? How about with a newer or older version?
This issue affects cefclient but also CEF4Delphi applications.

It started with CEF 83.

CEF 81 didn’t have this issue.

Does the problem reproduce with Google Chrome at the same version? How about with a newer or older version?

I only tested Chromium 83.0.4103.61 on Linux and it loaded the version information correctly.

WinDbg shows this trace :

00000084`7ddbd1c0 00007ff8`18472ad2 libcef!content::RenderFrameHostManager::GetFrameHostForNavigation+0xad3 [Y:\work\CEF3_git\chromium\src\content\browser\frame_host\render_frame_host_manager.cc @ 862] 
00000084`7ddbd490 00007ff8`184178f8 libcef!content::RenderFrameHostManager::DidCreateNavigationRequest+0x4e [Y:\work\CEF3_git\chromium\src\content\browser\frame_host\render_frame_host_manager.cc @ 777] 
00000084`7ddbd620 00007ff8`184458ce libcef!content::FrameTreeNode::CreatedNavigationRequest+0x138 [Y:\work\CEF3_git\chromium\src\content\browser\frame_host\frame_tree_node.cc @ 473] 
00000084`7ddbd7c0 00007ff8`18421bf1 libcef!content::NavigatorImpl::Navigate+0x1a0 [Y:\work\CEF3_git\chromium\src\content\browser\frame_host\navigator_impl.cc @ 327] 
00000084`7ddbdac0 00007ff8`18420ec6 libcef!content::NavigationControllerImpl::NavigateWithoutEntry+0xbff [Y:\work\CEF3_git\chromium\src\content\browser\frame_host\navigation_controller_impl.cc @ 2966] 
00000084`7ddbdd10 00007ff8`18420d88 libcef!content::NavigationControllerImpl::LoadURLWithParams+0x116 [Y:\work\CEF3_git\chromium\src\content\browser\frame_host\navigation_controller_impl.cc @ 983] 
00000084`7ddbdef0 00007ff8`1a59cc0d libcef!content::NavigationControllerImpl::LoadURL+0x90 [Y:\work\CEF3_git\chromium\src\content\browser\frame_host\navigation_controller_impl.cc @ 946] 
00000084`7ddbe250 00007ff8`1a5b1cd1 libcef!CefBrowserHostImpl::LoadMainFrameURL+0x1db [Y:\work\CEF3_git\chromium\src\cef\libcef\browser\browser_host_impl.cc @ 1651] 
00000084`7ddbe4f0 00007ff8`1a5b1b51 libcef!CefFrameHostImpl::LoadURLWithExtras+0x12b [Y:\work\CEF3_git\chromium\src\cef\libcef\browser\frame_host_impl.cc @ 346] 
00000084`7ddbe780 00007ff8`172ba219 libcef!CefFrameHostImpl::LoadURL+0xa7 [Y:\work\CEF3_git\chromium\src\cef\libcef\browser\frame_host_impl.cc @ 167] 
00000084`7ddbe8a0 00007ff6`37218a84 libcef!`anonymous namespace'::frame_load_url+0x92 [Y:\work\CEF3_git\chromium\src\cef\libcef_dll\cpptoc\frame_cpptoc.cc @ 219] 
00000084`7ddbea40 00007ff8`5e5f5c0d cefclient!Ordinal0+0x48a84
00000084`7ddbecd0 00007ff8`5e5f5602 USER32!UserCallWinProcCheckWow+0x2bd
00000084`7ddbee60 00007ff8`1a6d0738 USER32!DispatchMessageWorker+0x1e2
00000084`7ddbeee0 00007ff8`1a6cfed3 libcef!base::MessagePumpForUI::ProcessMessageHelper+0x288 [Y:\work\CEF3_git\chromium\src\base\message_loop\message_pump_win.cc @ 478] 
00000084`7ddbf130 00007ff8`1a6cfd00 libcef!base::MessagePumpForUI::ProcessNextWindowsMessage+0xa3 [Y:\work\CEF3_git\chromium\src\base\message_loop\message_pump_win.cc @ 446] 
00000084`7ddbf2b0 00007ff8`1a6cf1a4 libcef!base::MessagePumpForUI::DoRunLoop+0x120 [Y:\work\CEF3_git\chromium\src\base\message_loop\message_pump_win.cc @ 213] 
00000084`7ddbf480 00007ff8`1b1e184c libcef!base::MessagePumpWin::Run+0xa4 [Y:\work\CEF3_git\chromium\src\base\message_loop\message_pump_win.cc @ 77] 
00000084`7ddbf600 00007ff8`1a65d738 libcef!base::sequence_manager::internal::ThreadControllerWithMessagePumpImpl::Run+0x13c [Y:\work\CEF3_git\chromium\src\base\task\sequence_manager\thread_controller_with_message_pump_impl.cc @ 433] 
00000084`7ddbf7a0 00007ff8`1a5aefbb libcef!base::RunLoop::Run+0x348 [Y:\work\CEF3_git\chromium\src\base\run_loop.cc @ 126] 
00000084`7ddbf990 00007ff6`371d4a49 libcef!CefRunMessageLoop+0xc0 [Y:\work\CEF3_git\chromium\src\cef\libcef\browser\context.cc @ 387] 
00000084`7ddbfb00 00007ff6`37221c29 cefclient!Ordinal0+0x4a49
00000084`7ddbfb30 00007ff6`372de6e2 cefclient!Ordinal0+0x51c29
00000084`7ddbfe50 00007ff8`5da57bd4 cefclient!GetHandleVerifier+0x517e2
00000084`7ddbfe90 00007ff8`5f26ce51 KERNEL32!BaseThreadInitThunk+0x14
00000084`7ddbfec0 00000000`00000000 ntdll!RtlUserThreadStart+0x21

Perhaps this issue is related to this one on CEF 84 :
https://bitbucket.org/chromiumembedded/cef/issues/2966/chrome-version-does-not-display-correctly

Comments (7)

  1. Marshall Greenblatt

    This crash also reproduces with cefclient M84 (current master). It’s this CHECK from RenderFrameHostManager::GetFrameHostForNavigation. The incorrect display from issue #2966 occurs if you load chrome://version directly (e.g. start cefclient with --url=chrome://version).

  2. Johann Scheiterbauer

    I have the same issue in our JCEF implementation.

    Opening a browser with “about:blank” and later navigating to “chrome:version” crashes the application.

    See https://magpcss.org/ceforum/viewtopic.php?f=17&t=18055

    Also happened when i wanted to show the errorHtml via loadURL of a dataUrl in onLoadingStateChange when I didn’t check the “boolean isLoading” before.

    Might be a timing problem?

  3. Log in to comment