| Index: content/common/service_manager/embedded_service_runner.cc
|
| diff --git a/content/common/service_manager/embedded_service_runner.cc b/content/common/service_manager/embedded_service_runner.cc
|
| index 665a6e388b3569a4996daccbc6f23c4c99d4f9f5..f2ab9949c590dff18af7ee33891e7540f6868c04 100644
|
| --- a/content/common/service_manager/embedded_service_runner.cc
|
| +++ b/content/common/service_manager/embedded_service_runner.cc
|
| @@ -30,6 +30,8 @@ class EmbeddedServiceRunner::InstanceManager
|
| : name_(name.as_string()),
|
| factory_callback_(info.factory),
|
| use_own_thread_(!info.task_runner && info.use_own_thread),
|
| + message_loop_type_(info.message_loop_type),
|
| + thread_priority_(info.thread_priority),
|
| quit_closure_(quit_closure),
|
| quit_task_runner_(base::ThreadTaskRunnerHandle::Get()),
|
| service_task_runner_(info.task_runner) {
|
| @@ -40,10 +42,16 @@ class EmbeddedServiceRunner::InstanceManager
|
| void BindServiceRequest(service_manager::mojom::ServiceRequest request) {
|
| DCHECK(runner_thread_checker_.CalledOnValidThread());
|
|
|
| + LOG(ERROR) << "EmbeddedServiceRunner::InstanceManager::BindServiceRequest: "
|
| + << "name_=" << name_;
|
| if (use_own_thread_ && !thread_) {
|
| + LOG(ERROR) << 1;
|
| // Start a new thread if necessary.
|
| thread_.reset(new base::Thread(name_));
|
| - thread_->Start();
|
| + base::Thread::Options options;
|
| + options.message_loop_type = message_loop_type_;
|
| + options.priority = thread_priority_;
|
| + thread_->StartWithOptions(options);
|
| service_task_runner_ = thread_->task_runner();
|
| }
|
|
|
| @@ -133,6 +141,8 @@ class EmbeddedServiceRunner::InstanceManager
|
| const std::string name_;
|
| const ServiceInfo::ServiceFactory factory_callback_;
|
| const bool use_own_thread_;
|
| + base::MessageLoop::Type message_loop_type_;
|
| + base::ThreadPriority thread_priority_;
|
| const base::Closure quit_closure_;
|
| const scoped_refptr<base::SingleThreadTaskRunner> quit_task_runner_;
|
|
|
|
|