New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 779276 link

Starred by 4 users

Issue metadata

Status: Duplicate
Merged: issue 778856
Owner:
Not on Chrome anymore
Closed: Oct 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Windows , Mac
Pri: 1
Type: Bug



Sign in to add a comment

Crash with "Check failed: identifier_plugin_.find(identifier) == identifier_plugin_.end()." on macOS

Project Member Reported by lgar...@chromium.org, Oct 27 2017

Issue description

Chrome Version: 7f95c8453a369c61e3c2bf23a7fb7c8ea60b1e6b
OS: macOS 10.12.6

What steps will reproduce the problem?
(1) Build and run a release build
(2) Leave Chrome running for a minute or two.

What is the expected result?
No crash

What happens instead?
[62198:775:1027/163037.571828:FATAL:plugin_finder.cc(302)] Check failed: identifier_plugin_.find(identifier) == identifier_plugin_.end().
0   libbase.dylib                       0x000000010245184c base::debug::StackTrace::StackTrace(unsigned long) + 28
1   libbase.dylib                       0x000000010247c192 logging::LogMessage::~LogMessage() + 210
2   libchrome_dll.dylib                 0x000000010793b56b PluginFinder::ReinitializePlugins(base::DictionaryValue const*) + 347
3   libchrome_dll.dylib                 0x000000010794ac04 PluginsResourceService::Unpack(base::DictionaryValue const&) + 196
4   libchrome_dll.dylib                 0x0000000107fdd2ad web_resource::WebResourceService::OnUnpackFinished(std::__1::unique_ptr<base::Value, std::__1::default_delete<base::Value> >) + 61
5   libchrome_dll.dylib                 0x0000000107fdddd2 void base::internal::InvokeHelper<true, void>::MakeItSo<void (web_resource::WebResourceService::* const&)(std::__1::unique_ptr<base::Value, std::__1::default_delete<base::Value> >), base::WeakPtr<web_resource::WebResourceService> const&, std::__1::unique_ptr<base::Value, std::__1::default_delete<base::Value> > >(void (web_resource::WebResourceService::* const&&&)(std::__1::unique_ptr<base::Value, std::__1::default_delete<base::Value> >), base::WeakPtr<web_resource::WebResourceService> const&&&, std::__1::unique_ptr<base::Value, std::__1::default_delete<base::Value> >&&) + 210
6   libchrome_dll.dylib                 0x00000001070db832 data_decoder::SafeJsonParserImpl::ReportResults(std::__1::unique_ptr<base::Value, std::__1::default_delete<base::Value> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) + 258
7   libchrome_dll.dylib                 0x00000001070db6e5 data_decoder::SafeJsonParserImpl::OnParseDone(std::__1::unique_ptr<base::Value, std::__1::default_delete<base::Value> >, base::Optional<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > const&) + 277
8   libchrome_dll.dylib                 0x00000001070dbec6 base::internal::Invoker<base::internal::BindState<void (data_decoder::SafeJsonParserImpl::*)(std::__1::unique_ptr<base::Value, std::__1::default_delete<base::Value> >, base::Optional<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > const&), base::internal::UnretainedWrapper<data_decoder::SafeJsonParserImpl> >, void (std::__1::unique_ptr<base::Value, std::__1::default_delete<base::Value> >, base::Optional<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > const&)>::Run(base::internal::BindStateBase*, std::__1::unique_ptr<base::Value, std::__1::default_delete<base::Value> >&&, base::Optional<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > const&) + 54
9   libchrome_dll.dylib                 0x00000001070e01ec data_decoder::mojom::JsonParser_Parse_ForwardToCallback::Accept(mojo::Message*) + 428
10  libbindings.dylib                   0x00000001035cf867 mojo::InterfaceEndpointClient::HandleValidatedMessage(mojo::Message*) + 1255
11  libbindings.dylib                   0x00000001035cefc6 mojo::FilterChain::Accept(mojo::Message*) + 150
12  libbindings.dylib                   0x00000001035d0b85 mojo::InterfaceEndpointClient::HandleIncomingMessage(mojo::Message*) + 117
13  libbindings.dylib                   0x00000001035dbe62 mojo::internal::MultiplexRouter::ProcessIncomingMessage(mojo::internal::MultiplexRouter::MessageWrapper*, mojo::internal::MultiplexRouter::ClientCallBehavior, base::SequencedTaskRunner*) + 1282
14  libbindings.dylib                   0x00000001035db35c mojo::internal::MultiplexRouter::Accept(mojo::Message*) + 348
15  libbindings.dylib                   0x00000001035cefc6 mojo::FilterChain::Accept(mojo::Message*) + 150
16  libbindings.dylib                   0x00000001035c9a85 mojo::Connector::ReadSingleMessage(unsigned int*) + 421
17  libbindings.dylib                   0x00000001035ca571 mojo::Connector::ReadAllAvailableMessages() + 97
18  libbindings.dylib                   0x00000001035ca429 mojo::Connector::OnHandleReadyInternal(unsigned int) + 137
19  libbindings.dylib                   0x00000001035cac36 mojo::SimpleWatcher::DiscardReadyState(base::RepeatingCallback<void (unsigned int)> const&, unsigned int, mojo::HandleSignalsState const&) + 102
20  libmojo_public_system_cpp.dylib     0x000000010364e64d mojo::SimpleWatcher::OnHandleReady(int, unsigned int, mojo::HandleSignalsState const&) + 429
21  libmojo_public_system_cpp.dylib     0x000000010364eba0 void base::internal::InvokeHelper<true, void>::MakeItSo<void (mojo::SimpleWatcher::* const&)(int, unsigned int, mojo::HandleSignalsState const&), base::WeakPtr<mojo::SimpleWatcher> const&, int const&, unsigned int const&, mojo::HandleSignalsState const&>(void (mojo::SimpleWatcher::* const&&&)(int, unsigned int, mojo::HandleSignalsState const&), base::WeakPtr<mojo::SimpleWatcher> const&&&, int const&&&, unsigned int const&&&, mojo::HandleSignalsState const&&&) + 208
22  libbase.dylib                       0x00000001024521d5 base::debug::TaskAnnotator::RunTask(char const*, base::PendingTask*) + 261
23  libbase.dylib                       0x0000000102493069 base::internal::IncomingTaskQueue::RunTask(base::PendingTask*) + 121
24  libbase.dylib                       0x0000000102497777 base::MessageLoop::RunTask(base::PendingTask*) + 519
25  libbase.dylib                       0x0000000102497bba base::MessageLoop::DeferOrRunPendingTask(base::PendingTask) + 202
26  libbase.dylib                       0x0000000102497e51 base::MessageLoop::DoWork() + 609
27  libbase.dylib                       0x000000010249bcaa base::MessagePumpCFRunLoopBase::RunWork() + 42
28  libbase.dylib                       0x000000010247e0fa base::mac::CallWithEHFrame(void () block_pointer) + 10
29  libbase.dylib                       0x000000010249b58f base::MessagePumpCFRunLoopBase::RunWorkSource(void*) + 63
30  CoreFoundation                      0x00007fffc87143e1 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 17
31  CoreFoundation                      0x00007fffc86f565c __CFRunLoopDoSources0 + 556
32  CoreFoundation                      0x00007fffc86f4b46 __CFRunLoopRun + 934
33  CoreFoundation                      0x00007fffc86f4544 CFRunLoopRunSpecific + 420
34  HIToolbox                           0x00007fffc7c53ebc RunCurrentEventLoopInMode + 240
35  HIToolbox                           0x00007fffc7c53cf1 ReceiveNextEventCommon + 432
36  HIToolbox                           0x00007fffc7c53b26 _BlockUntilNextEventMatchingListInModeWithFilter + 71
37  AppKit                              0x00007fffc61eca54 _DPSNextEvent + 1120
38  AppKit                              0x00007fffc69687ee -[NSApplication(NSEvent) _nextEventMatchingEventMask:untilDate:inMode:dequeue:] + 2796
39  libchrome_dll.dylib                 0x00000001074dcc90 __71-[BrowserCrApplication nextEventMatchingMask:untilDate:inMode:dequeue:]_block_invoke + 64
40  libbase.dylib                       0x000000010247e0fa base::mac::CallWithEHFrame(void () block_pointer) + 10
41  libchrome_dll.dylib                 0x00000001074dcbd4 -[BrowserCrApplication nextEventMatchingMask:untilDate:inMode:dequeue:] + 164
42  AppKit                              0x00007fffc61e13db -[NSApplication run] + 926
43  libbase.dylib                       0x000000010249cdd7 base::MessagePumpNSApplication::DoRun(base::MessagePump::Delegate*) + 359
44  libbase.dylib                       0x000000010249afde base::MessagePumpCFRunLoopBase::Run(base::MessagePump::Delegate*) + 110
45  libbase.dylib                       0x0000000102497142 base::MessageLoop::Run() + 146
46  libbase.dylib                       0x00000001024d54ff base::RunLoop::Run() + 127
47  libchrome_dll.dylib                 0x00000001074e29d8 ChromeBrowserMainParts::MainMessageLoopRun(int*) + 312
48  libcontent.dylib                    0x000000010e0a9264 content::BrowserMainLoop::RunMainMessageLoopParts() + 52
49  libcontent.dylib                    0x000000010e0ac5d6 content::BrowserMainRunnerImpl::Run() + 102
50  libcontent.dylib                    0x000000010e0a55ac content::BrowserMain(content::MainFunctionParams const&) + 124
51  libcontent.dylib                    0x000000010ec67434 content::ContentMainRunnerImpl::Run() + 564
52  libembedder.dylib                   0x000000010231d082 service_manager::Main(service_manager::MainParams const&) + 2482
53  libcontent.dylib                    0x000000010ec66804 content::ContentMain(content::ContentMainParams const&) + 68
54  libchrome_dll.dylib                 0x0000000106c3294f ChromeMain + 175
55  Chromium                            0x00000001007f2de4 main + 404
56  libdyld.dylib                       0x00007fffde2bf235 start + 1
57  ???                                 0x0000000000000003 0x0 + 3


This has happened to me on two computers so far.

bauerb@: Could you triage?
 
Summary: Crash with "Check failed: identifier_plugin_.find(identifier) == identifier_plugin_.end()." on macOS (was: "Check failed: identifier_plugin_.find(identifier) == identifier_plugin_.end()." on macOS)
Labels: -Pri-2 Pri-1

Comment 3 by bauerb@chromium.org, Oct 30 2017

Cc: wfh@chromium.org
I don't have a Mac for Chromium development, but I suppose I could at least add the plugin identifier to the DCHECK message.

Will, could this be related to your recent changes?

Comment 4 by gab@chromium.org, Oct 30 2017

Labels: OS-Windows
Repros on Windows debug build as well:

---------------------------
Fatal error
---------------------------
[70688:52276:1030/113633.087:FATAL:plugin_finder.cc(302)] Check failed: identifier_plugin_.find(identifier) == identifier_plugin_.end(). 
Backtrace:
	base::debug::StackTrace::StackTrace [0x100A7097+55]
	base::debug::StackTrace::StackTrace [0x100A6911+17]
	logging::LogMessage::~LogMessage [0x100FC26E+94]
	PluginFinder::ReinitializePlugins [0x09D1917D+381]
	PluginsResourceService::Unpack [0x09D2958C+76]
	web_resource::WebResourceService::OnUnpackFinished [0x0AD4FAFB+171]
	base::internal::FunctorTraits<void (__thiscall web_resource::WebResourceService::*)(std::unique_ptr<base::Value,std::default_delete<base::Value> >),void>::Invoke<base::WeakPtr<web_resource::WebResourceService> const &,std::unique_ptr<base::Value,std::defa [0x0AD4E64B+43]
	base::internal::InvokeHelper<1,void>::MakeItSo<void (__thiscall web_resource::WebResourceService::*const &)(std::unique_ptr<base::Value,std::default_delete<base::Value> >),base::WeakPtr<web_resource::WebResourceService> const &,std::unique_ptr<base::Value [0x0AD4E8E6+70]
	base::internal::Invoker<base::internal::BindState<void (__thiscall web_resource::WebResourceService::*)(std::unique_ptr<base::Value,std::default_delete<base::Value> >),base::WeakPtr<web_resource::WebResourceService> >,void __cdecl(std::unique_ptr<base::Va [0x0AD4E9F1+65]
	base::internal::Invoker<base::internal::BindState<void (__thiscall web_resource::WebResourceService::*)(std::unique_ptr<base::Value,std::default_delete<base::Value> >),base::WeakPtr<web_resource::WebResourceService> >,void __cdecl(std::unique_ptr<base::Va [0x0AD4FBD1+49]
	base::RepeatingCallback<void __cdecl(std::unique_ptr<base::Value,std::default_delete<base::Value> >)>::Run [0x064BDABE+46]
	data_decoder::SafeJsonParserImpl::ReportResults [0x06B71DC3+211]
	data_decoder::SafeJsonParserImpl::OnParseDone [0x06B71C66+198]
	base::internal::FunctorTraits<void (__thiscall data_decoder::SafeJsonParserImpl::*)(std::unique_ptr<base::Value,std::default_delete<base::Value> >,base::Optional<std::basic_string<char,std::char_traits<char>,std::allocator<char> > > const &),void>::Invoke [0x06B707A0+48]
	base::internal::InvokeHelper<0,void>::MakeItSo<void (__thiscall data_decoder::SafeJsonParserImpl::*const &)(std::unique_ptr<base::Value,std::default_delete<base::Value> >,base::Optional<std::basic_string<char,std::char_traits<char>,std::allocator<char> >  [0x06B7084E+62]
	base::internal::Invoker<base::internal::BindState<void (__thiscall data_decoder::SafeJsonParserImpl::*)(std::unique_ptr<base::Value,std::default_delete<base::Value> >,base::Optional<std::basic_string<char,std::char_traits<char>,std::allocator<char> > > co [0x06B70905+85]
	base::internal::Invoker<base::internal::BindState<void (__thiscall data_decoder::SafeJsonParserImpl::*)(std::unique_ptr<base::Value,std::default_delete<base::Value> >,base::Optional<std::basic_string<char,std::char_traits<char>,std::allocator<char> > > co [0x06B71EAE+62]
	base::OnceCallback<void __cdecl(std::unique_ptr<base::Value,std::default_delete<base::Value> >,base::Optional<std::basic_string<char,std::char_traits<char>,std::allocator<char> > > const &)>::Run [0x06B7E200+80]
	data_decoder::mojom::JsonParser_Parse_ForwardToCallback::Accept [0x06B7D7D5+405]
	mojo::InterfaceEndpointClient::HandleValidatedMessage [0x054143EA+986]
	mojo::InterfaceEndpointClient::HandleIncomingMessageThunk::Accept [0x05412FA6+22]
	mojo::FilterChain::Accept [0x0540A6ED+237]
	mojo::InterfaceEndpointClient::HandleIncomingMessage [0x05413FDA+154]
	mojo::internal::MultiplexRouter::ProcessIncomingMessage [0x0543000E+1086]
	mojo::internal::MultiplexRouter::Accept [0x0542C5A6+422]
	mojo::FilterChain::Accept [0x0540A6ED+237]
	mojo::Connector::ReadSingleMessage [0x054011FB+619]
	mojo::Connector::ReadAllAvailableMessages [0x05400CE3+67]
	mojo::Connector::OnHandleReadyInternal [0x05400524+180]
	mojo::Connector::OnWatcherHandleReady [0x054006C3+19]
	base::internal::FunctorTraits<void (__thiscall mojo::Connector::*)(unsigned int),void>::Invoke<mojo::Connector *,unsigned int> [0x053FD60A+26]
	base::internal::InvokeHelper<0,void>::MakeItSo<void (__thiscall mojo::Connector::*const &)(unsigned int),mojo::Connector *,unsigned int> [0x053FDAD1+49]
	base::internal::Invoker<base::internal::BindState<void (__thiscall mojo::Connector::*)(unsigned int),base::internal::UnretainedWrapper<mojo::Connector> >,void __cdecl(unsigned int)>::RunImpl<void (__thiscall mojo::Connector::*const &)(unsigned int),std::t [0x053FDB38+72]
	base::internal::Invoker<base::internal::BindState<void (__thiscall mojo::Connector::*)(unsigned int),base::internal::UnretainedWrapper<mojo::Connector> >,void __cdecl(unsigned int)>::Run [0x05401551+49]
	base::RepeatingCallback<void __cdecl(unsigned int)>::Run [0x054BE52E+46]
	mojo::SimpleWatcher::DiscardReadyState [0x054BDD7F+15]
	base::internal::FunctorTraits<void (__cdecl*)(base::RepeatingCallback<void __cdecl(unsigned int)> const &,unsigned int,mojo::HandleSignalsState const &),void>::Invoke<base::RepeatingCallback<void __cdecl(unsigned int)> const &,unsigned int,mojo::HandleSig [0x054BB3DF+47]
	base::internal::InvokeHelper<0,void>::MakeItSo<void (__cdecl*const &)(base::RepeatingCallback<void __cdecl(unsigned int)> const &,unsigned int,mojo::HandleSignalsState const &),base::RepeatingCallback<void __cdecl(unsigned int)> const &,unsigned int,mojo: [0x054BB85E+62]
	base::internal::Invoker<base::internal::BindState<void (__cdecl*)(base::RepeatingCallback<void __cdecl(unsigned int)> const &,unsigned int,mojo::HandleSignalsState const &),base::RepeatingCallback<void __cdecl(unsigned int)> >,void __cdecl(unsigned int,mo [0x054BBADE+78]
	base::internal::Invoker<base::internal::BindState<void (__cdecl*)(base::RepeatingCallback<void __cdecl(unsigned int)> const &,unsigned int,mojo::HandleSignalsState const &),base::RepeatingCallback<void __cdecl(unsigned int)> >,void __cdecl(unsigned int,mo [0x054BE37E+62]
	base::RepeatingCallback<void __cdecl(unsigned int,mojo::HandleSignalsState const &)>::Run [0x054C677B+59]
	mojo::SimpleWatcher::OnHandleReady [0x054C659C+268]
	base::internal::FunctorTraits<void (__thiscall mojo::SimpleWatcher::*)(int,unsigned int,mojo::HandleSignalsState const &),void>::Invoke<base::WeakPtr<mojo::SimpleWatcher> const &,int const &,unsigned int const &,mojo::HandleSignalsState const &> [0x054C454B+59]
	base::internal::InvokeHelper<1,void>::MakeItSo<void (__thiscall mojo::SimpleWatcher::*const &)(int,unsigned int,mojo::HandleSignalsState const &),base::WeakPtr<mojo::SimpleWatcher> const &,int const &,unsigned int const &,mojo::HandleSignalsState const &> [0x054C462C+92]
	base::internal::Invoker<base::internal::BindState<void (__thiscall mojo::SimpleWatcher::*)(int,unsigned int,mojo::HandleSignalsState const &),base::WeakPtr<mojo::SimpleWatcher>,int,unsigned int,mojo::HandleSignalsState>,void __cdecl(void)>::RunImpl<void ( [0x054C46E1+145]
	base::internal::Invoker<base::internal::BindState<void (__thiscall mojo::SimpleWatcher::*)(int,unsigned int,mojo::HandleSignalsState const &),base::WeakPtr<mojo::SimpleWatcher>,int,unsigned int,mojo::HandleSignalsState>,void __cdecl(void)>::Run [0x054C6724+36]
	base::OnceCallback<void __cdecl(void)>::Run [0x1004FAF5+53]
	base::debug::TaskAnnotator::RunTask [0x100AC523+483]
	base::internal::IncomingTaskQueue::RunTask [0x10127A22+146]
	base::MessageLoop::RunTask [0x10130EC4+500]
	base::MessageLoop::DeferOrRunPendingTask [0x1012F571+49]
	base::MessageLoop::DoWork [0x1012FBC4+356]
	base::MessagePumpForUI::DoRunLoop [0x10135FF3+67]
	base::MessagePumpWin::Run [0x10136F8B+123]
	base::MessageLoop::Run [0x10130BCF+191]
	base::RunLoop::Run [0x101E22DA+170]
	ChromeBrowserMainParts::MainMessageLoopRun [0x07745476+262]
	content::BrowserMainLoop::RunMainMessageLoopParts [0x11CD7781+225]
	content::BrowserMainRunnerImpl::Run [0x11CDDB33+243]
	content::BrowserMain [0x11CC888B+155]
	content::RunNamedProcessTypeMain [0x13A25E77+135]
	content::ContentMainRunnerImpl::Run [0x13A25D51+401]
Is there a simple workaround [1] for those of us who need a non-crashing Chrome build for development?

[1] Apart from code changes that would be easy to commit by accident.

Comment 6 by bauerb@chromium.org, Oct 31 2017

Issue 779184 has been merged into this issue.

Comment 7 by rsesek@chromium.org, Oct 31 2017

Mergedinto: 778856
Status: Duplicate (was: Assigned)

Sign in to add a comment