DCHECK exception on CEFCLIENT (and my app) shutdown

Having problems with building or using CEF's C/C++ APIs? This forum is here to help. Please do not post bug reports or feature requests here.

DCHECK exception on CEFCLIENT (and my app) shutdown

Postby BobM » Mon Oct 14, 2019 10:52 pm

Windows 10 Version 10.0.18362 Build 18362,
Visual Studio 2017, CEF cef_binary_77.1.12+gc63c001+chromium-77.0.3865.90_windows32, debug build, sandbox on or off, and no debug info as required to avoid corrupt exe...

When shutting down get...

[1015/144634.126:FATAL:memory_dump_manager.cc(247)] Check failed: (*mdp_iter)->task_runner && (*mdp_iter)->task_runner->RunsTasksInCurrentSequence(). MemoryDumpProvider "DiscardableSharedMemoryManager" attempted to unregister itself in a racy way. Please file a crbug.

Occurs in cefclient.exe as well as my application, and if a browser has or has not been created.

Code: Select all
    libcef.dll!logging::LogMessage::~LogMessage() Line 944   C++
>   libcef.dll!base::trace_event::MemoryDumpManager::UnregisterDumpProviderInternal(base::trace_event::MemoryDumpProvider * mdp, bool take_mdp_ownership_and_delete_async) Line 257   C++
    libcef.dll!base::trace_event::MemoryDumpManager::UnregisterDumpProvider(base::trace_event::MemoryDumpProvider * mdp) Line 204   C++
    libcef.dll!discardable_memory::DiscardableSharedMemoryManager::~DiscardableSharedMemoryManager() Line 247   C++
    libcef.dll!discardable_memory::DiscardableSharedMemoryManager::~DiscardableSharedMemoryManager() Line 243   C++
    [Inline Frame] libcef.dll!std::__1::default_delete<discardable_memory::DiscardableSharedMemoryManager>::operator()(discardable_memory::DiscardableSharedMemoryManager * __ptr) Line 2338   C++
    [Inline Frame] libcef.dll!std::__1::unique_ptr<discardable_memory::DiscardableSharedMemoryManager,std::__1::default_delete<discardable_memory::DiscardableSharedMemoryManager> >::reset(discardable_memory::DiscardableSharedMemoryManager * __p) Line 2651   C++
    [Inline Frame] libcef.dll!std::__1::unique_ptr<discardable_memory::DiscardableSharedMemoryManager,std::__1::default_delete<discardable_memory::DiscardableSharedMemoryManager> >::~unique_ptr() Line 2605   C++
    libcef.dll!content::ContentMainRunnerImpl::~ContentMainRunnerImpl() Line 608   C++
    libcef.dll!content::ContentMainRunnerImpl::~ContentMainRunnerImpl() Line 605   C++
    [Inline Frame] libcef.dll!std::__1::default_delete<content::ContentMainRunnerImpl>::operator()(content::ContentMainRunnerImpl * __ptr) Line 2338   C++
    [Inline Frame] libcef.dll!std::__1::unique_ptr<content::ContentMainRunnerImpl,std::__1::default_delete<content::ContentMainRunnerImpl> >::reset(content::ContentMainRunnerImpl * __p) Line 2651   C++
    [Inline Frame] libcef.dll!std::__1::unique_ptr<content::ContentMainRunnerImpl,std::__1::default_delete<content::ContentMainRunnerImpl> >::~unique_ptr() Line 2605   C++
    libcef.dll!content::ContentServiceManagerMainDelegate::~ContentServiceManagerMainDelegate() Line 21   C++
    libcef.dll!content::ContentServiceManagerMainDelegate::~ContentServiceManagerMainDelegate() Line 21   C++
    [Inline Frame] libcef.dll!std::__1::default_delete<content::ContentServiceManagerMainDelegate>::operator()(content::ContentServiceManagerMainDelegate * __ptr) Line 2338   C++
    [Inline Frame] libcef.dll!std::__1::unique_ptr<content::ContentServiceManagerMainDelegate,std::__1::default_delete<content::ContentServiceManagerMainDelegate> >::reset(content::ContentServiceManagerMainDelegate * __p) Line 2651   C++
    libcef.dll!CefContext::FinalizeShutdown() Line 638   C++
    libcef.dll!CefContext::Shutdown() Line 482   C++
    libcef.dll!CefShutdown() Line 272   C++
BobM
Mentor
 
Posts: 72
Joined: Wed May 11, 2016 4:28 pm

Re: DCHECK exception on CEFCLIENT (and my app) shutdown

Postby BobM » Tue Oct 15, 2019 12:56 am

Also, I just determined that the DCHECK exception only occurs when using --multi-threaded-message-loop.
BobM
Mentor
 
Posts: 72
Joined: Wed May 11, 2016 4:28 pm

Re: DCHECK exception on CEFCLIENT (and my app) shutdown

Postby BobM » Tue Oct 22, 2019 9:28 pm

Hi Marshall,

In cefclient.exe (and my application) this is still a problem with the cef_binary_77.1.18+g8e8d602+chromium-77.0.3865.120_windows32 binaries and Visual Studio 2019 when running Debug with multi-threaded-message-pump.

Any chance of having a look at this?
Thanks
BobM
Mentor
 
Posts: 72
Joined: Wed May 11, 2016 4:28 pm

Re: DCHECK exception on CEFCLIENT (and my app) shutdown

Postby amaitland » Tue Oct 22, 2019 10:51 pm

For reference there is a known shutdown issue with multithreaded message loop enabled.

https://bitbucket.org/chromiumembedded/ ... closing-if

Maybe unrelated
Maintainer of the CefSharp project.
amaitland
Virtuoso
 
Posts: 1291
Joined: Wed Jan 14, 2015 2:35 am

Re: DCHECK exception on CEFCLIENT (and my app) shutdown

Postby BobM » Wed Oct 23, 2019 12:56 am

amaitland wrote:For reference there is a known shutdown issue with multithreaded message loop enabled.

https://bitbucket.org/chromiumembedded/ ... closing-if

Maybe unrelated



It does look unrelated.
BobM
Mentor
 
Posts: 72
Joined: Wed May 11, 2016 4:28 pm

Re: DCHECK exception on CEFCLIENT (and my app) shutdown

Postby salvadordf » Wed Nov 06, 2019 6:32 am

I could reproduce this issue too with the latest cefclient.

I couldn't find an open issue about this so I created a new one :
https://bitbucket.org/chromiumembedded/ ... t-shutdown
Maintainer of the CEF4Delphi, WebView4Delphi, WebUI4Delphi and WebUI4CSharp projects.
User avatar
salvadordf
Expert
 
Posts: 129
Joined: Sun Dec 18, 2016 8:39 am
Location: Spain


Return to Support Forum

Who is online

Users browsing this forum: No registered users and 60 guests