summaryrefslogtreecommitdiff
path: root/chromium/content/utility
diff options
context:
space:
mode:
authorAllan Sandfeld Jensen <allan.jensen@qt.io>2017-07-12 14:07:37 +0200
committerAllan Sandfeld Jensen <allan.jensen@qt.io>2017-07-17 10:29:26 +0000
commitec02ee4181c49b61fce1c8fb99292dbb8139cc90 (patch)
tree25cde714b2b71eb639d1cd53f5a22e9ba76e14ef /chromium/content/utility
parentbb09965444b5bb20b096a291445170876225268d (diff)
downloadqtwebengine-chromium-ec02ee4181c49b61fce1c8fb99292dbb8139cc90.tar.gz
BASELINE: Update Chromium to 59.0.3071.134
Change-Id: Id02ef6fb2204c5fd21668a1c3e6911c83b17585a Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Diffstat (limited to 'chromium/content/utility')
-rw-r--r--chromium/content/utility/BUILD.gn3
-rw-r--r--chromium/content/utility/DEPS2
-rw-r--r--chromium/content/utility/in_process_utility_thread.cc3
-rw-r--r--chromium/content/utility/utility_blink_platform_impl.cc11
-rw-r--r--chromium/content/utility/utility_blink_platform_impl.h6
-rw-r--r--chromium/content/utility/utility_service_factory.cc30
-rw-r--r--chromium/content/utility/utility_thread_impl.cc13
7 files changed, 47 insertions, 21 deletions
diff --git a/chromium/content/utility/BUILD.gn b/chromium/content/utility/BUILD.gn
index d7b26302d96..2368cf8c3ce 100644
--- a/chromium/content/utility/BUILD.gn
+++ b/chromium/content/utility/BUILD.gn
@@ -31,12 +31,15 @@ source_set("utility") {
"//base",
"//content:export",
"//content/child",
+ "//content/network:network_sources",
"//content/public/child:child_sources",
"//content/public/common:common_sources",
"//mojo/common",
"//mojo/public/cpp/bindings",
"//ppapi/features",
"//sandbox",
+ "//services/data_decoder:lib",
+ "//services/data_decoder/public/cpp",
"//services/service_manager",
"//services/service_manager/public/cpp",
"//services/service_manager/public/interfaces",
diff --git a/chromium/content/utility/DEPS b/chromium/content/utility/DEPS
index 6569bcd5bf8..26456d68b75 100644
--- a/chromium/content/utility/DEPS
+++ b/chromium/content/utility/DEPS
@@ -1,7 +1,9 @@
include_rules = [
"+components/scheduler/child",
"+content/child",
+ "+content/network",
"+content/public/utility",
+ "+services/data_decoder",
"+services/service_manager",
"+services/service_manager",
"+services/shape_detection",
diff --git a/chromium/content/utility/in_process_utility_thread.cc b/chromium/content/utility/in_process_utility_thread.cc
index 8417c5991ce..0a390458c3b 100644
--- a/chromium/content/utility/in_process_utility_thread.cc
+++ b/chromium/content/utility/in_process_utility_thread.cc
@@ -15,7 +15,8 @@ namespace content {
// We want to ensure there's only one utility thread running at a time, as there
// are many globals used in the utility process.
-static base::LazyInstance<base::Lock> g_one_utility_thread_lock;
+static base::LazyInstance<base::Lock>::DestructorAtExit
+ g_one_utility_thread_lock;
InProcessUtilityThread::InProcessUtilityThread(
const InProcessChildThreadParams& params)
diff --git a/chromium/content/utility/utility_blink_platform_impl.cc b/chromium/content/utility/utility_blink_platform_impl.cc
index 75591968693..31e14731308 100644
--- a/chromium/content/utility/utility_blink_platform_impl.cc
+++ b/chromium/content/utility/utility_blink_platform_impl.cc
@@ -4,20 +4,21 @@
#include "content/utility/utility_blink_platform_impl.h"
-#include "third_party/WebKit/public/platform/scheduler/utility/webthread_impl_for_utility_thread.h"
+#include "third_party/WebKit/public/platform/scheduler/child/webthread_base.h"
namespace content {
UtilityBlinkPlatformImpl::UtilityBlinkPlatformImpl()
- : main_thread_(new blink::scheduler::WebThreadImplForUtilityThread()) {}
+ : main_thread_(blink::scheduler::WebThreadBase::InitializeUtilityThread()) {
+}
UtilityBlinkPlatformImpl::~UtilityBlinkPlatformImpl() {
}
-blink::WebThread* UtilityBlinkPlatformImpl::currentThread() {
- if (main_thread_->isCurrentThread())
+blink::WebThread* UtilityBlinkPlatformImpl::CurrentThread() {
+ if (main_thread_->IsCurrentThread())
return main_thread_.get();
- return BlinkPlatformImpl::currentThread();
+ return BlinkPlatformImpl::CurrentThread();
}
} // namespace content
diff --git a/chromium/content/utility/utility_blink_platform_impl.h b/chromium/content/utility/utility_blink_platform_impl.h
index f8bc8dc8ae2..3c5e7015492 100644
--- a/chromium/content/utility/utility_blink_platform_impl.h
+++ b/chromium/content/utility/utility_blink_platform_impl.h
@@ -12,7 +12,7 @@
namespace blink {
namespace scheduler {
-class WebThreadImplForUtilityThread;
+class WebThreadBase;
}
}
@@ -24,10 +24,10 @@ class UtilityBlinkPlatformImpl : public BlinkPlatformImpl {
~UtilityBlinkPlatformImpl() override;
// BlinkPlatformImpl implementation.
- blink::WebThread* currentThread() override;
+ blink::WebThread* CurrentThread() override;
private:
- std::unique_ptr<blink::scheduler::WebThreadImplForUtilityThread> main_thread_;
+ std::unique_ptr<blink::scheduler::WebThreadBase> main_thread_;
DISALLOW_COPY_AND_ASSIGN(UtilityBlinkPlatformImpl);
};
diff --git a/chromium/content/utility/utility_service_factory.cc b/chromium/content/utility/utility_service_factory.cc
index e70647c261d..73c2cf8e242 100644
--- a/chromium/content/utility/utility_service_factory.cc
+++ b/chromium/content/utility/utility_service_factory.cc
@@ -5,10 +5,17 @@
#include "content/utility/utility_service_factory.h"
#include "base/bind.h"
+#include "base/command_line.h"
+#include "content/child/child_process.h"
+#include "content/network/network_service.h"
#include "content/public/common/content_client.h"
+#include "content/public/common/content_switches.h"
+#include "content/public/common/service_names.mojom.h"
#include "content/public/utility/content_utility_client.h"
#include "content/public/utility/utility_thread.h"
#include "content/utility/utility_thread_impl.h"
+#include "services/data_decoder/data_decoder_service.h"
+#include "services/data_decoder/public/interfaces/constants.mojom.h"
#include "services/shape_detection/public/interfaces/constants.mojom.h"
#include "services/shape_detection/shape_detection_service.h"
@@ -18,6 +25,15 @@
namespace content {
+namespace {
+
+std::unique_ptr<service_manager::Service> CreateDataDecoderService() {
+ content::UtilityThread::Get()->EnsureBlinkInitialized();
+ return data_decoder::DataDecoderService::Create();
+}
+
+} // namespace
+
UtilityServiceFactory::UtilityServiceFactory() {}
UtilityServiceFactory::~UtilityServiceFactory() {}
@@ -35,6 +51,20 @@ void UtilityServiceFactory::RegisterServices(ServiceMap* services) {
base::Bind(&shape_detection::ShapeDetectionService::Create);
services->insert(std::make_pair(shape_detection::mojom::kServiceName,
shape_detection_info));
+
+ ServiceInfo data_decoder_info;
+ data_decoder_info.factory = base::Bind(&CreateDataDecoderService);
+ services->insert(
+ std::make_pair(data_decoder::mojom::kServiceName, data_decoder_info));
+
+ if (base::CommandLine::ForCurrentProcess()->HasSwitch(
+ switches::kEnableNetworkService)) {
+ ServiceInfo network_info;
+ network_info.factory = base::Bind(&NetworkService::CreateNetworkService);
+ network_info.task_runner = ChildProcess::current()->io_task_runner();
+ services->insert(
+ std::make_pair(content::mojom::kNetworkServiceName, network_info));
+ }
}
void UtilityServiceFactory::OnServiceQuit() {
diff --git a/chromium/content/utility/utility_thread_impl.cc b/chromium/content/utility/utility_thread_impl.cc
index dc67a816a8a..36e0e1d7d83 100644
--- a/chromium/content/utility/utility_thread_impl.cc
+++ b/chromium/content/utility/utility_thread_impl.cc
@@ -29,17 +29,6 @@
namespace content {
-namespace {
-
-template<typename SRC, typename DEST>
-void ConvertVector(const SRC& src, DEST* dest) {
- dest->reserve(src.size());
- for (typename SRC::const_iterator i = src.begin(); i != src.end(); ++i)
- dest->push_back(typename DEST::value_type(*i));
-}
-
-} // namespace
-
UtilityThreadImpl::UtilityThreadImpl()
: ChildThreadImpl(ChildThreadImpl::Options::Builder().Build()) {
Init();
@@ -84,7 +73,7 @@ void UtilityThreadImpl::EnsureBlinkInitialized() {
}
blink_platform_impl_.reset(new UtilityBlinkPlatformImpl);
- blink::Platform::initialize(blink_platform_impl_.get());
+ blink::Platform::Initialize(blink_platform_impl_.get());
}
void UtilityThreadImpl::Init() {