I am having a problem with CEF3 shutdown procedure - multiple "App.exe has triggered a breakpoint" appears during application shutdown. I am using CEF3 version: cef_binary_3.1750.1638_windows32, application is run in Visual Studio. I am using subprocess for rendering etc., and settings flag "multi_threaded_message_loop" is set to false. Could anyone help me find a solution to prevent those "breakpoints" ? Below code and stack traces.
Application main loop, and CefRunMessageLoop(), CefShutdown() calls:
- Code: Select all
int CApplication::Run()
{
for (;;) //main loop of MFC app
{
// phase1: check to see if we can do idle work
while (bIdle &&
!::PeekMessage(&(pState->m_msgCur), NULL, NULL, NULL, PM_NOREMOVE))
{
//code
}
// phase2: pump messages while available
do
{
//code
} while (::PeekMessage(&(pState->m_msgCur), NULL, NULL, NULL, PM_NOREMOVE));
if(m_mainWindow && m_mainWindow->isCefInitialized())
{
CefRunMessageLoop();
CefShutdown();
}
}
}
CefQuitMessageLoop() function is called when user press "close" button - then, some clean up is performed, and finally call below:
- Code: Select all
void CApplication::onApplicationAllowedToShutdown(Poco::EventArgs& args)
{
CefQuitMessageLoop();
}
First breakpoint:
Second breakpoint:
Thanks in advance,
szulak