diff options
| author | amistry <amistry@chromium.org> | 2016-03-14 15:35:23 -0700 |
|---|---|---|
| committer | Commit bot <commit-bot@chromium.org> | 2016-03-14 22:36:38 +0000 |
| commit | f223b129dbf452ffb8040136efca8a17554b21a0 (patch) | |
| tree | fc39d8f39e9f6b525846f112d63247748e2cd817 | |
| parent | 867bcf4ae6b7e8e64b72cfa4cef2ab7cdd2239cf (diff) | |
| download | chromium_src-f223b129dbf452ffb8040136efca8a17554b21a0.zip chromium_src-f223b129dbf452ffb8040136efca8a17554b21a0.tar.gz chromium_src-f223b129dbf452ffb8040136efca8a17554b21a0.tar.bz2 | |
Never return nullptr in RenderThread::GetServiceRegistry().
Going forward, since Mojo usage is going to increase, it doesn't make
sense to have to deal with the possibility of ServiceRegistry not
existing. To eliminate confusion, guarantee it always exists, even in
tests.
BUG=None
Review URL: https://codereview.chromium.org/1790323003
Cr-Commit-Position: refs/heads/master@{#381095}
| -rw-r--r-- | chrome/renderer/chrome_render_process_observer.cc | 7 | ||||
| -rw-r--r-- | components/web_cache/renderer/web_cache_render_process_observer.cc | 6 | ||||
| -rw-r--r-- | content/public/renderer/render_thread.h | 2 | ||||
| -rw-r--r-- | content/public/test/mock_render_thread.cc | 8 | ||||
| -rw-r--r-- | content/public/test/mock_render_thread.h | 1 | ||||
| -rw-r--r-- | content/renderer/render_thread_impl.cc | 1 | ||||
| -rw-r--r-- | content/renderer/renderer_blink_platform_impl.cc | 6 |
7 files changed, 15 insertions, 16 deletions
diff --git a/chrome/renderer/chrome_render_process_observer.cc b/chrome/renderer/chrome_render_process_observer.cc index 37264ff..e8daff7 100644 --- a/chrome/renderer/chrome_render_process_observer.cc +++ b/chrome/renderer/chrome_render_process_observer.cc @@ -265,11 +265,8 @@ ChromeRenderProcessObserver::ChromeRenderProcessObserver() resource_delegate_.reset(new RendererResourceDelegate()); thread->SetResourceDispatcherDelegate(resource_delegate_.get()); - content::ServiceRegistry* service_registry = thread->GetServiceRegistry(); - if (service_registry) { - service_registry->AddService<ResourceUsageReporter>( - base::Bind(CreateResourceUsageReporter, weak_factory_.GetWeakPtr())); - } + thread->GetServiceRegistry()->AddService<ResourceUsageReporter>( + base::Bind(CreateResourceUsageReporter, weak_factory_.GetWeakPtr())); // Configure modules that need access to resources. net::NetModule::SetResourceProvider(chrome_common_net::NetResourceProvider); diff --git a/components/web_cache/renderer/web_cache_render_process_observer.cc b/components/web_cache/renderer/web_cache_render_process_observer.cc index f6ec4d5..4e7ee6a 100644 --- a/components/web_cache/renderer/web_cache_render_process_observer.cc +++ b/components/web_cache/renderer/web_cache_render_process_observer.cc @@ -26,10 +26,8 @@ WebCacheRenderProcessObserver::WebCacheRenderProcessObserver() pending_cache_capacity_(kUnitializedCacheCapacity) { content::ServiceRegistry* service_registry = content::RenderThread::Get()->GetServiceRegistry(); - if (service_registry) { - service_registry->AddService(base::Bind( - &WebCacheRenderProcessObserver::BindRequest, base::Unretained(this))); - } + service_registry->AddService(base::Bind( + &WebCacheRenderProcessObserver::BindRequest, base::Unretained(this))); } WebCacheRenderProcessObserver::~WebCacheRenderProcessObserver() { diff --git a/content/public/renderer/render_thread.h b/content/public/renderer/render_thread.h index 97cbda1..db554c1 100644 --- a/content/public/renderer/render_thread.h +++ b/content/public/renderer/render_thread.h @@ -113,7 +113,7 @@ class CONTENT_EXPORT RenderThread : virtual public ChildThread { // Gets the shutdown event for the process. virtual base::WaitableEvent* GetShutdownEvent() = 0; - // Returns the ServiceRegistry for this thread. + // Returns the ServiceRegistry for this thread. Never returns nullptr. virtual ServiceRegistry* GetServiceRegistry() = 0; }; diff --git a/content/public/test/mock_render_thread.cc b/content/public/test/mock_render_thread.cc index 3f441cc..55b2269 100644 --- a/content/public/test/mock_render_thread.cc +++ b/content/public/test/mock_render_thread.cc @@ -4,10 +4,12 @@ #include "content/public/test/mock_render_thread.h" +#include "base/logging.h" #include "base/single_thread_task_runner.h" #include "base/thread_task_runner_handle.h" #include "build/build_config.h" #include "content/common/frame_messages.h" +#include "content/common/mojo/service_registry_impl.h" #include "content/common/view_messages.h" #include "content/public/renderer/render_process_observer.h" #include "content/renderer/render_view_impl.h" @@ -25,7 +27,8 @@ MockRenderThread::MockRenderThread() new_window_routing_id_(0), new_window_main_frame_routing_id_(0), new_window_main_frame_widget_routing_id_(0), - new_frame_routing_id_(0) {} + new_frame_routing_id_(0), + service_registry_(new ServiceRegistryImpl) {} MockRenderThread::~MockRenderThread() { while (!filters_.empty()) { @@ -186,7 +189,8 @@ void MockRenderThread::ReleaseCachedFonts() { #endif // OS_WIN ServiceRegistry* MockRenderThread::GetServiceRegistry() { - return NULL; + DCHECK(service_registry_); + return service_registry_.get(); } void MockRenderThread::SendCloseMessage() { diff --git a/content/public/test/mock_render_thread.h b/content/public/test/mock_render_thread.h index c8ae817..7b6c7d3 100644 --- a/content/public/test/mock_render_thread.h +++ b/content/public/test/mock_render_thread.h @@ -159,6 +159,7 @@ class MockRenderThread : public RenderThread { base::ObserverList<RenderProcessObserver> observers_; cc::TestSharedBitmapManager shared_bitmap_manager_; + scoped_ptr<ServiceRegistry> service_registry_; }; } // namespace content diff --git a/content/renderer/render_thread_impl.cc b/content/renderer/render_thread_impl.cc index 7b43032..68fc3d2 100644 --- a/content/renderer/render_thread_impl.cc +++ b/content/renderer/render_thread_impl.cc @@ -1632,6 +1632,7 @@ void RenderThreadImpl::PreCacheFontCharacters(const LOGFONT& log_font, #endif // OS_WIN ServiceRegistry* RenderThreadImpl::GetServiceRegistry() { + DCHECK(service_registry()); return service_registry(); } diff --git a/content/renderer/renderer_blink_platform_impl.cc b/content/renderer/renderer_blink_platform_impl.cc index 90f827e..16c36c6 100644 --- a/content/renderer/renderer_blink_platform_impl.cc +++ b/content/renderer/renderer_blink_platform_impl.cc @@ -1175,10 +1175,8 @@ void RendererBlinkPlatformImpl::connectToRemoteService( RenderThreadImpl::current()->layout_test_mode()) return; - if (ServiceRegistry* registry = RenderThread::Get()->GetServiceRegistry()) { - // registry can be null during testing. - registry->ConnectToRemoteService(name, std::move(handle)); - } + RenderThread::Get()->GetServiceRegistry()->ConnectToRemoteService( + name, std::move(handle)); } void RendererBlinkPlatformImpl::startListening( |
