Random LibCef Crash

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.

Random LibCef Crash

Postby johnk » Tue Apr 22, 2014 7:42 am

Hi,

I have integrated libcef 3.1750 in my Visual Studio 2012 c++ application but have random crash with white screen when navigate. I have recompilated your library for get debug symbol but the issue is present also in your precompiled dll.

The characteristics of pc are:
CPU: AMD Athlon 64
RAM: 1 GB
Video: Gforce 7100 GS
OS: Windows XP SP3 full patched,

Dump of crash:

Code: Select all
Senza flag   >   1664   0   Thread principale   Thread principale   libcef.dll!v8::internal::Type::LubBitset   Normale
                        libcef.dll!v8::internal::Type::LubBitset(v8::internal::Object * value=0x16000005) Riga 133   
                        libcef.dll!v8::internal::Type::LubBitset() Riga 126   
                        libcef.dll!v8::internal::Type::SlowIs(v8::internal::Type * that=0x00000300) Riga 263   
                        libcef.dll!v8::internal::LoadStubCompiler::HandlerFrontendHeader(v8::internal::Handle<v8::internal::Type> type={...}, v8::internal::Register object_reg={...}, v8::internal::Handle<v8::internal::JSObject> holder={...}, v8::internal::Handle<v8::internal::Name> name={...}, v8::internal::Label * miss=0x0012e634) Riga 1205   
                        libcef.dll!v8::internal::LoadStubCompiler::CallbackHandlerFrontend(v8::internal::Handle<v8::internal::Type> type={...}, v8::internal::Register object_reg={...}, v8::internal::Handle<v8::internal::JSObject> holder={...}, v8::internal::Handle<v8::internal::Name> name={...}, v8::internal::Handle<v8::internal::Object> callback={...}) Riga 1344   
                        libcef.dll!v8::internal::LoadStubCompiler::CompileLoadCallback(v8::internal::Handle<v8::internal::Type> type={...}, v8::internal::Handle<v8::internal::JSObject> holder={...}, v8::internal::Handle<v8::internal::Name> name={...}, v8::internal::Handle<v8::internal::ExecutableAccessorInfo> callback={...}) Riga 1355   
                        libcef.dll!v8::internal::LoadIC::CompileHandler(v8::internal::LookupResult * lookup=0x01365000, v8::internal::Handle<v8::internal::Object> object={...}, v8::internal::Handle<v8::internal::String> name={...}, v8::internal::Handle<v8::internal::Object> unused={...}, v8::internal::InlineCacheHolderFlag cache_holder=OWN_MAP) Riga 1265   
                        libcef.dll!v8::internal::IC::ComputeHandler(v8::internal::LookupResult * lookup=0x0012e7d0, v8::internal::Handle<v8::internal::Object> object={...}, v8::internal::Handle<v8::internal::String> name={...}, v8::internal::Handle<v8::internal::Object> value={...}) Riga 1185   
                        libcef.dll!v8::internal::LoadIC::UpdateCaches(v8::internal::LookupResult * lookup=0x00000000, v8::internal::Handle<v8::internal::Object> object={...}, v8::internal::Handle<v8::internal::String> name={...}) Riga 1157   
                        libcef.dll!v8::internal::LoadIC::Load(v8::internal::Handle<v8::internal::Object> object={...}, v8::internal::Handle<v8::internal::String> name={...}) Riga 941   
                        libcef.dll!v8::internal::__RT_impl_LoadIC_Miss(v8::internal::Arguments args={...}, v8::internal::Isolate * isolate=0x01365000) Riga 2095   
                        2c40a216()   
                        [I frame indicati di seguito possono essere errati e/o mancanti]   
                        2ecf9a49()   
                        2c4111c1()   
                        2ecf10d9()   
                        2c4111c1()   
                        2ecfa6fe()   
                        2c4111c1()   
                        06ae83c1()   
                        2c4111c1()   
                        2c441f1e()   
                        06aaac19()   
                        2c441f25()   
                        06aaa774()   
                        2c43f619()   
                        2c41660a()   
                        libcef.dll!v8::internal::Invoke(bool is_construct=false, v8::internal::Handle<v8::internal::JSFunction> function={...}, v8::internal::Handle<v8::internal::Object> receiver={...}, int argc=1, v8::internal::Handle<v8::internal::Object> * args=0x0012ebdc, bool * has_pending_exception=0x0012eb07) Riga 120   
                        libcef.dll!v8::internal::Execution::Call(v8::internal::Isolate * isolate=0x01365000, v8::internal::Handle<v8::internal::Object> callable={...}, v8::internal::Handle<v8::internal::Object> receiver={...}, int argc=1, v8::internal::Handle<v8::internal::Object> * argv=0x0012ebdc, bool * pending_exception=0x0012eb07, bool convert_receiver=true) Riga 183   
                        libcef.dll!v8::Function::Call(v8::Handle<v8::Value> recv={...}, int argc=1, v8::Handle<v8::Value> * argv=0x0012ebdc) Riga 4191   
                        libcef.dll!WebCore::V8ScriptRunner::callFunction(v8::Handle<v8::Function> function={...}, WebCore::ExecutionContext * context=0x55a069d4, v8::Handle<v8::Value> receiver={...}, int argc=1, v8::Handle<v8::Value> * info=0x0012ebdc, v8::Isolate * isolate=0x01365000) Riga 136   
                        libcef.dll!WebCore::ScriptController::callFunction(WebCore::ExecutionContext * context=0x55a069d4, v8::Handle<v8::Function> function={...}, v8::Handle<v8::Object> receiver={...}, int argc=1, v8::Handle<v8::Value> * info=0x0012ebdc, v8::Isolate * isolate=0x01365000) Riga 180   
                        libcef.dll!WebCore::ScriptController::callFunction(v8::Handle<v8::Function> function={...}, v8::Handle<v8::Object> receiver={...}, int argc=1, v8::Handle<v8::Value> * info=0x0012ebdc) Riga 152   
                        libcef.dll!WebCore::V8EventListener::callListenerFunction(WebCore::ExecutionContext * context=0x0139803c, v8::Handle<v8::Value> jsEvent={...}, WebCore::Event * event=0x0449d700) Riga 93   
                        libcef.dll!WebCore::V8AbstractEventListener::invokeEventHandler(WebCore::ExecutionContext * context=0x55a069d4, WebCore::Event * event=0x0449d700, v8::Local<v8::Value> jsEvent={...}) Riga 129   
                        libcef.dll!WebCore::V8AbstractEventListener::handleEvent(WebCore::ExecutionContext * context=0x01398000, WebCore::Event * event=0x0449d700) Riga 94   
                        libcef.dll!WebCore::EventTarget::fireEventListeners(WebCore::Event * event=0x0449d700, WebCore::EventTargetData * d=0x04d19020, WTF::Vector<WebCore::RegisteredEventListener,1> & entry={...}) Riga 334   
                        libcef.dll!WebCore::EventTarget::fireEventListeners(WebCore::Event * event=0x0449d700) Riga 275   
                        libcef.dll!WebCore::Node::handleLocalEvents(WebCore::Event * event=0x0449d700) Riga 2364   
                        libcef.dll!WebCore::EventContext::handleLocalEvents(WebCore::Event * event=0x0449d700) Riga 66   
                        libcef.dll!WebCore::EventDispatcher::dispatchEventAtTarget() Riga 162   
                        libcef.dll!WebCore::EventDispatcher::dispatch() Riga 118   
                        libcef.dll!WebCore::EventDispatchMediator::dispatchEvent(WebCore::EventDispatcher * dispatcher=0x0012ed64) Riga 53   
                        libcef.dll!WebCore::EventDispatcher::dispatchEvent(WebCore::Node * node=0x55a41ee0, WTF::PassRefPtr<WebCore::EventDispatchMediator> mediator={...}) Riga 49   
                        libcef.dll!WebCore::Node::dispatchEvent(WTF::PassRefPtr<WebCore::Event> event={...}) Riga 2383   
                        libcef.dll!WebCore::ScriptedAnimationController::dispatchEvents() Riga 115   
                        libcef.dll!WebCore::ScriptedAnimationController::serviceScriptedAnimations(double monotonicTimeNow=21434.195000000000) Riga 159   
                        libcef.dll!WebCore::Document::serviceScriptedAnimations(double monotonicAnimationStartTime=21434.195000000000) Riga 4797   
                        libcef.dll!WebCore::FrameView::serviceScriptedAnimations(double monotonicAnimationStartTime=21434.195000000000) Riga 2122   
                        libcef.dll!blink::PageWidgetDelegate::animate(WebCore::Page * page=0x01386820, double monotonicFrameBeginTime=21434.195000000000) Riga 67   
                        libcef.dll!blink::WebViewImpl::animate(double monotonicFrameBeginTime=21434.195000000000) Riga 1803   
                        libcef.dll!content::RenderWidgetCompositor::Animate(double frame_begin_time=21434.195000000000) Riga 578   
                        libcef.dll!cc::LayerTreeHost::UpdateClientAnimations(base::TimeTicks frame_begin_time={...}) Riga 249   
                        libcef.dll!cc::ThreadProxy::BeginMainFrame(scoped_ptr<cc::ThreadProxy::BeginMainFrameAndCommitState,base::DefaultDeleter<cc::ThreadProxy::BeginMainFrameAndCommitState> > begin_main_frame_state={...}) Riga 819   
                        libcef.dll!base::internal::InvokeHelper<1,void,base::internal::RunnableAdapter<void (__thiscall cc::ThreadProxy::*)(scoped_ptr<cc::ThreadProxy::BeginMainFrameAndCommitState,base::DefaultDeleter<cc::ThreadProxy::BeginMainFrameAndCommitState> >)>,void __cdecl(base::WeakPtr<cc::ThreadProxy> const &,scoped_ptr<cc::ThreadProxy::BeginMainFrameAndCommitState,base::DefaultDeleter<cc::ThreadProxy::BeginMainFrameAndCommitState> >)>::MakeItSo(base::internal::RunnableAdapter<void (__thiscall cc::ThreadProxy::*)(scoped_ptr<cc::ThreadProxy::BeginMainFrameAndCommitState,base::DefaultDeleter<cc::ThreadProxy::BeginMainFrameAndCommitState> >)> runnable={...}, const base::WeakPtr<cc::ThreadProxy> & weak_ptr={...}, scoped_ptr<cc::ThreadProxy::BeginMainFrameAndCommitState,base::DefaultDeleter<cc::ThreadProxy::BeginMainFrameAndCommitState> > a2={...}) Riga 910   
                        libcef.dll!base::internal::Invoker<2,base::internal::BindState<base::internal::RunnableAdapter<void (__thiscall cc::ThreadProxy::*)(scoped_ptr<cc::ThreadProxy::BeginMainFrameAndCommitState,base::DefaultDeleter<cc::ThreadProxy::BeginMainFrameAndCommitState> >)>,void __cdecl(cc::ThreadProxy *,scoped_ptr<cc::ThreadProxy::BeginMainFrameAndCommitState,base::DefaultDeleter<cc::ThreadProxy::BeginMainFrameAndCommitState> >),void __cdecl(base::WeakPtr<cc::ThreadProxy>,base::internal::PassedWrapper<scoped_ptr<cc::ThreadProxy::BeginMainFrameAndCommitState,base::DefaultDeleter<cc::ThreadProxy::BeginMainFrameAndCommitState> > >)>,void __cdecl(cc::ThreadProxy *,scoped_ptr<cc::ThreadProxy::BeginMainFrameAndCommitState,base::DefaultDeleter<cc::ThreadProxy::BeginMainFrameAndCommitState> >)>::Run(base::internal::BindStateBase * base=0x00000000) Riga 1253   
                        libcef.dll!base::MessageLoop::RunTask(const base::PendingTask & pending_task={...}) Riga 513   
                        libcef.dll!base::MessageLoop::DoWork() Riga 638   
                        libcef.dll!base::MessagePumpDefault::Run(base::MessagePump::Delegate * delegate=0x0012f658) Riga 33   
                        libcef.dll!base::MessageLoop::RunInternal() Riga 461   
                        libcef.dll!base::RunLoop::Run() Riga 48   
                        libcef.dll!base::MessageLoop::Run() Riga 322   
                        libcef.dll!content::RendererMain(const content::MainFunctionParams & parameters={...}) Riga 252   
                        libcef.dll!content::RunNamedProcessTypeMain(const std::basic_string<char,std::char_traits<char>,std::allocator<char> > & process_type={...}, const content::MainFunctionParams & main_function_params={...}, content::ContentMainDelegate * delegate=0x0012f980) Riga 472   
                        libcef.dll!content::ContentMainRunnerImpl::Run() Riga 791   
                        libcef.dll!content::ContentMain(HINSTANCE__ * instance=0x00400000, sandbox::SandboxInterfaceInfo * sandbox_info=0x0012f9dc, content::ContentMainDelegate * delegate=0x0012f980) Riga 35   
                        libcef.dll!CefExecuteProcess(const CefMainArgs & args={...}, CefRefPtr<CefApp> application={...}, void * windows_sandbox_info=0x00000000) Riga 100   
                        libcef.dll!cef_execute_process(const _cef_main_args_t * args=0x0012fe1c, _cef_app_t * application=0x0016c630, void * windows_sandbox_info=0x00000000) Riga 130   
                        ccBrowser.exe!CefExecuteProcess(const CefMainArgs & args={...}, CefRefPtr<CefApp> application={...}, void * windows_sandbox_info=0x00000000) Riga 132   
                        ccBrowser.exe!wWinMain(HINSTANCE__ * hInstance=0x00400000, HINSTANCE__ * hPrevInstance=0x00000000, wchar_t * lpCmdLine=0x00020636, int nCmdShow=5) Riga 111   
                        ccBrowser.exe!__tmainCRTStartup() Riga 238   
                        ccBrowser.exe!wWinMainCRTStartup() Riga 164   
                        kernel32.dll!RegisterWaitForInputIdle() + 73 byte   

Senza flag      424   0   Thread processo di lavoro   Thread Win32   dbghelp.dll!03066e92   Normale
Senza flag      1764   0   Thread processo di lavoro   Thread Win32   libcef.dll!sandbox::BrokerServicesBase::TargetEventsThread   Normale
Senza flag      1992   0   Thread processo di lavoro   Thread Win32   libcef.dll!base::MessagePumpForIO::GetIOItem   Normale
Senza flag      1252   0   Thread processo di lavoro   Thread Win32   ntdll.dll!KiFastSystemCallRet() + 0 byte   Normale
Senza flag      1224   0   Thread processo di lavoro   Thread Win32   libcef.dll!base::WaitableEvent::Wait   Normale
Senza flag      1148   0   Thread processo di lavoro   Thread Win32   libcef.dll!v8::internal::Semaphore::Wait   Normale
Senza flag      1584   0   Thread processo di lavoro   Thread Win32   libcef.dll!base::WaitableEvent::TimedWait   Normale
Senza flag      1512   0   Thread processo di lavoro   Thread Win32   libcef.dll!base::WaitableEvent::Wait   Normale
Senza flag      908   0   Thread processo di lavoro   Thread Win32   wdmaud.drv!midMessage() + 840 byte   Critica
Senza flag      364   0   Thread processo di lavoro   Thread Win32   ccBrowser.exe!pj_thread_sleep   Normale
Senza flag      1972   0   Thread processo di lavoro   Thread Win32   mswsock.dll!719d3c9c   Normale
Senza flag      384   0   Thread processo di lavoro   Thread Win32   libcef.dll!base::WaitableEvent::Wait   Normale
Senza flag      396   0   Thread processo di lavoro   Thread Win32   libcef.dll!base::WaitableEvent::Wait   Normale
Senza flag      1600   0   Thread processo di lavoro   Thread Win32   libcef.dll!base::`anonymous namespace'::CancelableFileOperation<char const ,int (__stdcall*)(void *,void const *,unsigned long,unsigned long *,_OVERLAPPED *)>   Critica
                        ntdll.dll!KiFastSystemCallRet() + 0 byte   
                        [I frame indicati di seguito possono essere errati e/o mancanti, non sono stati caricati simboli per ntdll.dll]   
                        ntdll.dll!NtWaitForMultipleObjects() + 12 byte   
                        kernel32.dll!CreateFileMappingA() + 134 byte   
                        kernel32.dll!ReadFile() + 522 byte   
                        libcef.dll!base::`anonymous namespace'::CancelableFileOperation<char const ,int (__stdcall*)(void *,void const *,unsigned long,unsigned long *,_OVERLAPPED *)>(int (void *, const void *, unsigned long, unsigned long *, _OVERLAPPED *) * operation=0x7c801812, void * file=0x00000220, const char * buffer=0x047fff8c, unsigned int length=4, base::WaitableEvent * io_event=0x034f3250, base::WaitableEvent * cancel_event=0x034f324c, base::CancelableSyncSocket * socket=0x034f3244, unsigned long timeout_in_ms=0) Riga 156   
                        libcef.dll!base::CancelableSyncSocket::Receive(void * buffer=0x047fff8c, unsigned int length=4) Riga 300   
                        libcef.dll!media::AudioDeviceThread::Thread::Run() Riga 168   
                        libcef.dll!media::AudioDeviceThread::Thread::ThreadMain() Riga 161   
                        kernel32.dll!GetModuleFileNameA() + 436 byte   





thanks in advance
johnk
Newbie
 
Posts: 7
Joined: Tue Apr 22, 2014 7:25 am

Re: Random LibCef Crash

Postby magreenblatt » Tue Apr 22, 2014 10:07 am

What URL or HTML/JS content are you loading? Does the problem reproduce in Google Chrome on the same computer?
magreenblatt
Site Admin
 
Posts: 12382
Joined: Fri May 29, 2009 6:57 pm

Re: Random LibCef Crash

Postby johnk » Tue Apr 22, 2014 10:28 am

magreenblatt wrote:What URL or HTML/JS content are you loading? Does the problem reproduce in Google Chrome on the same computer?


i'm sorry but it is an intranet page not accessible from external pc, it use DHTMLX framework for render html content, the problem is not present in chrome but we are not totaly sure becouse crash is random and not depend directly from an user action . I have tested libcef on an recent pc (Windows 7, i7 processor, 8 GB RAM) and for the moment the program not has crashed. It's possible the problem is thread-compositing or gpu on old pc? the blacklist gpu present in chrome, works also on libcef?

Thanks in advance.
johnk
Newbie
 
Posts: 7
Joined: Tue Apr 22, 2014 7:25 am

Re: Random LibCef Crash

Postby johnk » Tue Apr 22, 2014 10:44 am

The result of url chrome://gpu page on 34.0 version:

Graphics Feature Status
Canvas: Software only, hardware acceleration unavailable
3D CSS: Unavailable. Hardware acceleration unavailable
Compositing: Software only, hardware acceleration unavailable
CSS Animation: Software only, hardware acceleration unavailable
Flash 3D: Unavailable. Hardware acceleration unavailable
Flash Stage3D: Unavailable. Hardware acceleration unavailable
Flash Stage3D Baseline profile: Unavailable. Hardware acceleration unavailable
Video: Software only, hardware acceleration unavailable
Video Decode: Software only, hardware acceleration unavailable
Video Encode: Software only, hardware acceleration unavailable
WebGL: Unavailable. Hardware acceleration unavailable
Problems Detected
GPU process was unable to boot: All GPU features are blacklisted.
Drivers older than 2009-01 on Windows are possibly unreliable: 72979, 89802, 315205
Hardware video decode is only supported in win7+: 159458
Disable GPU on all Windows versions prior to and including Vista: 315199
Driver Bug Workarounds
clear_alpha_in_readpixels
clear_uniforms_before_first_program_use
disable_d3d11
exit_on_context_lost
set_texture_filter_before_generating_mipmap
use_current_program_after_successful_link
Version Information
Data exported 22/4/2014 17:36:56
Chrome version Chrome/34.0.1847.116
Operating system Windows NT 5.1 SP3
Software rendering list version 7.1
Driver bug list version 4.1
ANGLE commit id b6c94e1bb81a
2D graphics backend Skia
Command Line Args --flag-switches-begin --flag-switches-end
Performance Information
Graphics 0.0
Gaming 0.0
Overall 0.0
Driver Information
Initialization time 0
Sandboxed false
GPU0 VENDOR = 0x10de, DEVICE= 0x0240
Optimus false
AMD switchable false
Desktop compositing none
Driver vendor NVIDIA
Driver version 6.14.11.7813
Driver date 9-17-2008
Pixel shader version
Vertex shader version
Machine model
GL version
GL_VENDOR
GL_RENDERER
GL_VERSION
GL_EXTENSIONS
Window system binding vendor
Window system binding version
Window system binding extensions
Reset notification strategy 0x0000
Diagnostics
... loading ...
johnk
Newbie
 
Posts: 7
Joined: Tue Apr 22, 2014 7:25 am

Re: Random LibCef Crash

Postby magreenblatt » Tue Apr 22, 2014 12:43 pm

johnk wrote:the blacklist gpu present in chrome, works also on libcef?

Yes, the GPU blacklist should be honored. The crash that you're seeing is in the V8 JavaScript engine so it's probably not related to the GPU.

I wonder if perhaps you're running out of memory on the 1GB machine. How much free memory do you have on that machine while the application is running?

Since only the renderer process is crashing you could try reloading the application using CefRequestHandler::OnRenderProcessTerminated.
magreenblatt
Site Admin
 
Posts: 12382
Joined: Fri May 29, 2009 6:57 pm

Re: Random LibCef Crash

Postby johnk » Tue Apr 22, 2014 1:02 pm

Free Memory RAM Space are 60% ,only libcef process run on this machine. The two process of my application not pass 150 MB. The chrome requirements are 128MB RAM with 100 MB Disk Space. Any suggestion for prevent crash?

Thanks in advance
johnk
Newbie
 
Posts: 7
Joined: Tue Apr 22, 2014 7:25 am


Return to Support Forum

Who is online

Users browsing this forum: No registered users and 41 guests