Index: content/renderer/render_thread_impl.cc |
diff --git a/content/renderer/render_thread_impl.cc b/content/renderer/render_thread_impl.cc |
index 625c629d00eac693b94dd020b6600e30bf7dc2e6..22297f9de3cecaa0989b3e804918c67444fd40df 100644 |
--- a/content/renderer/render_thread_impl.cc |
+++ b/content/renderer/render_thread_impl.cc |
@@ -142,8 +142,10 @@ |
#include "net/base/registry_controlled_domains/registry_controlled_domain.h" |
#include "net/base/url_util.h" |
#include "ppapi/features/features.h" |
+#include "services/service_manager/public/cpp/connector.h" |
#include "services/service_manager/public/cpp/interface_provider.h" |
#include "services/service_manager/public/cpp/interface_registry.h" |
+#include "services/ui/public/interfaces/constants.mojom.h" |
#include "skia/ext/event_tracer_impl.h" |
#include "skia/ext/skia_memory_dump_provider.h" |
#include "third_party/WebKit/public/platform/WebImageGenerator.h" |
@@ -655,9 +657,8 @@ void RenderThreadImpl::Init( |
#if defined(USE_AURA) |
if (IsRunningInMash()) { |
- gpu_service_ = |
- ui::GpuService::Create(GetServiceManagerConnection()->GetConnector(), |
- ChildProcess::current()->io_task_runner()); |
+ gpu_service_ = ui::GpuService::Create( |
+ GetServiceManagerConnection()->GetConnector(), GetIOTaskRunner()); |
} |
#endif |
gpu_memory_buffer_manager_ = |
@@ -884,8 +885,18 @@ void RenderThreadImpl::Init( |
categorized_worker_pool_->Start(num_raster_threads); |
discardable_memory::mojom::DiscardableSharedMemoryManagerPtr manager_ptr; |
- ChildThread::Get()->GetRemoteInterfaces()->GetInterface( |
- mojo::GetProxy(&manager_ptr)); |
+ if (IsRunningInMash()) { |
+#if defined(USE_AURA) |
+ GetServiceManagerConnection()->GetConnector()->ConnectToInterface( |
+ ui::mojom::kServiceName, &manager_ptr); |
+#else |
+ NOTREACHED(); |
+#endif |
+ } else { |
+ ChildThread::Get()->GetRemoteInterfaces()->GetInterface( |
+ mojo::GetProxy(&manager_ptr)); |
+ } |
+ |
discardable_shared_memory_manager_ = base::MakeUnique< |
discardable_memory::ClientDiscardableSharedMemoryManager>( |
std::move(manager_ptr), GetIOTaskRunner()); |