summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoramistry <amistry@chromium.org>2016-03-14 15:35:23 -0700
committerCommit bot <commit-bot@chromium.org>2016-03-14 22:36:38 +0000
commitf223b129dbf452ffb8040136efca8a17554b21a0 (patch)
treefc39d8f39e9f6b525846f112d63247748e2cd817
parent867bcf4ae6b7e8e64b72cfa4cef2ab7cdd2239cf (diff)
downloadchromium_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.cc7
-rw-r--r--components/web_cache/renderer/web_cache_render_process_observer.cc6
-rw-r--r--content/public/renderer/render_thread.h2
-rw-r--r--content/public/test/mock_render_thread.cc8
-rw-r--r--content/public/test/mock_render_thread.h1
-rw-r--r--content/renderer/render_thread_impl.cc1
-rw-r--r--content/renderer/renderer_blink_platform_impl.cc6
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(