Chromium Code Reviews| Index: content/browser/renderer_host/render_process_host_impl.cc |
| diff --git a/content/browser/renderer_host/render_process_host_impl.cc b/content/browser/renderer_host/render_process_host_impl.cc |
| index dfc936452cbec217cf9dd94545ebc41112090315..cf4fc4454d29557a97e03d9eb38f646407eecf54 100644 |
| --- a/content/browser/renderer_host/render_process_host_impl.cc |
| +++ b/content/browser/renderer_host/render_process_host_impl.cc |
| @@ -712,6 +712,20 @@ void RenderProcessHostImpl::RegisterRendererMainThreadFactory( |
| g_renderer_main_thread_factory = create; |
| } |
| +// static |
| +// TODO(alokp): Remove after collecting crash data. |
| +// Temporary checks to verify that all shared workers are terminated. |
|
horo
2016/08/09 04:03:24
Nit: s/shared workers/shared workers and service w
alokp
2016/08/09 05:07:26
Thanks for reviewing. I just commented about share
horo
2016/08/09 06:01:26
I just suggested that you should change the commen
alokp
2016/08/09 06:35:27
For more context see crbug.com/628192
All audio s
horo
2016/08/09 09:00:52
Ah I got it.
I checked ServiceWorkerProcessManage
|
| +// It is suspected that shared workers prevent render process hosts |
| +// from shutting down: crbug.com/608049 |
| +void RenderProcessHostImpl::CheckAllWorkersTerminated() { |
| + iterator iter(AllHostsIterator()); |
| + while (!iter.IsAtEnd()) { |
| + RenderProcessHostImpl* host = |
| + static_cast<RenderProcessHostImpl*>(iter.GetCurrentValue()); |
| + CHECK_EQ(0, host->worker_ref_count_); |
|
falken
2016/09/02 07:47:45
This would infinitely loop, no? iter.Advance() sho
|
| + } |
| +} |
| + |
| RenderProcessHostImpl::~RenderProcessHostImpl() { |
| #ifndef NDEBUG |
| DCHECK(is_self_deleted_) |