OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include <stddef.h> | 5 #include <stddef.h> |
6 #include <utility> | 6 #include <utility> |
7 | 7 |
8 #include "base/base_switches.h" | 8 #include "base/base_switches.h" |
9 #include "base/command_line.h" | 9 #include "base/command_line.h" |
10 #include "base/debug/debugger.h" | 10 #include "base/debug/debugger.h" |
(...skipping 129 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
140 // whatever occurs before it. | 140 // whatever occurs before it. |
141 HandleRendererErrorTestParameters(parsed_command_line); | 141 HandleRendererErrorTestParameters(parsed_command_line); |
142 | 142 |
143 RendererMainPlatformDelegate platform(parameters); | 143 RendererMainPlatformDelegate platform(parameters); |
144 #if defined(OS_MACOSX) | 144 #if defined(OS_MACOSX) |
145 // As long as scrollbars on Mac are painted with Cocoa, the message pump | 145 // As long as scrollbars on Mac are painted with Cocoa, the message pump |
146 // needs to be backed by a Foundation-level loop to process NSTimers. See | 146 // needs to be backed by a Foundation-level loop to process NSTimers. See |
147 // http://crbug.com/306348#c24 for details. | 147 // http://crbug.com/306348#c24 for details. |
148 scoped_ptr<base::MessagePump> pump(new base::MessagePumpNSRunLoop()); | 148 scoped_ptr<base::MessagePump> pump(new base::MessagePumpNSRunLoop()); |
149 scoped_ptr<base::MessageLoop> main_message_loop( | 149 scoped_ptr<base::MessageLoop> main_message_loop( |
150 new base::MessageLoop(pump.Pass())); | 150 new base::MessageLoop(std::move(pump))); |
151 #else | 151 #else |
152 // The main message loop of the renderer services doesn't have IO or UI tasks. | 152 // The main message loop of the renderer services doesn't have IO or UI tasks. |
153 scoped_ptr<base::MessageLoop> main_message_loop(new base::MessageLoop()); | 153 scoped_ptr<base::MessageLoop> main_message_loop(new base::MessageLoop()); |
154 #endif | 154 #endif |
155 | 155 |
156 base::PlatformThread::SetName("CrRendererMain"); | 156 base::PlatformThread::SetName("CrRendererMain"); |
157 scoped_ptr<scheduler::RendererScheduler> renderer_scheduler( | 157 scoped_ptr<scheduler::RendererScheduler> renderer_scheduler( |
158 scheduler::RendererScheduler::Create()); | 158 scheduler::RendererScheduler::Create()); |
159 | 159 |
160 bool no_sandbox = parsed_command_line.HasSwitch(switches::kNoSandbox); | 160 bool no_sandbox = parsed_command_line.HasSwitch(switches::kNoSandbox); |
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
199 // zygote_main_linux.cc. However, calling multiple times from the same thread | 199 // zygote_main_linux.cc. However, calling multiple times from the same thread |
200 // is OK. | 200 // is OK. |
201 InitializeWebRtcModule(); | 201 InitializeWebRtcModule(); |
202 #endif | 202 #endif |
203 | 203 |
204 { | 204 { |
205 #if defined(OS_WIN) || defined(OS_MACOSX) | 205 #if defined(OS_WIN) || defined(OS_MACOSX) |
206 // TODO(markus): Check if it is OK to unconditionally move this | 206 // TODO(markus): Check if it is OK to unconditionally move this |
207 // instruction down. | 207 // instruction down. |
208 RenderProcessImpl render_process; | 208 RenderProcessImpl render_process; |
209 RenderThreadImpl::Create(main_message_loop.Pass(), | 209 RenderThreadImpl::Create(std::move(main_message_loop), |
210 renderer_scheduler.Pass()); | 210 std::move(renderer_scheduler)); |
211 #endif | 211 #endif |
212 bool run_loop = true; | 212 bool run_loop = true; |
213 if (!no_sandbox) | 213 if (!no_sandbox) |
214 run_loop = platform.EnableSandbox(); | 214 run_loop = platform.EnableSandbox(); |
215 #if defined(OS_POSIX) && !defined(OS_MACOSX) | 215 #if defined(OS_POSIX) && !defined(OS_MACOSX) |
216 RenderProcessImpl render_process; | 216 RenderProcessImpl render_process; |
217 RenderThreadImpl::Create(std::move(main_message_loop), | 217 RenderThreadImpl::Create(std::move(main_message_loop), |
218 std::move(renderer_scheduler)); | 218 std::move(renderer_scheduler)); |
219 #endif | 219 #endif |
220 RenderThreadImpl::current()->Send( | 220 RenderThreadImpl::current()->Send( |
(...skipping 16 matching lines...) Expand all Loading... |
237 // ignore shutdown-only leaks. | 237 // ignore shutdown-only leaks. |
238 __lsan_do_leak_check(); | 238 __lsan_do_leak_check(); |
239 #endif | 239 #endif |
240 } | 240 } |
241 platform.PlatformUninitialize(); | 241 platform.PlatformUninitialize(); |
242 TRACE_EVENT_ASYNC_END0("startup", "RendererMain", 0); | 242 TRACE_EVENT_ASYNC_END0("startup", "RendererMain", 0); |
243 return 0; | 243 return 0; |
244 } | 244 } |
245 | 245 |
246 } // namespace content | 246 } // namespace content |
OLD | NEW |