Index: remoting/host/desktop_process_main.cc |
diff --git a/remoting/host/desktop_process_main.cc b/remoting/host/desktop_process_main.cc |
index 95242c921660fa5be649285d6ff10d8d001bfd35..794128c5f81e0ead4c9efa54d9f533305aaaa84a 100644 |
--- a/remoting/host/desktop_process_main.cc |
+++ b/remoting/host/desktop_process_main.cc |
@@ -40,6 +40,10 @@ int DesktopProcessMain() { |
new AutoThreadTaskRunner(message_loop.task_runner(), |
run_loop.QuitClosure()); |
+ // Launch the video capture thread. |
+ scoped_refptr<AutoThreadTaskRunner> video_capture_task_runner = |
+ AutoThread::Create("Video capture thread", ui_task_runner); |
+ |
// Launch the input thread. |
scoped_refptr<AutoThreadTaskRunner> input_task_runner = |
AutoThread::CreateWithType( |
@@ -52,17 +56,13 @@ int DesktopProcessMain() { |
// Create a platform-dependent environment factory. |
scoped_ptr<DesktopEnvironmentFactory> desktop_environment_factory; |
#if defined(OS_WIN) |
- desktop_environment_factory.reset( |
- new SessionDesktopEnvironmentFactory( |
- ui_task_runner, |
- input_task_runner, |
- ui_task_runner, |
- base::Bind(&DesktopProcess::InjectSas, |
- desktop_process.AsWeakPtr()))); |
+ desktop_environment_factory.reset(new SessionDesktopEnvironmentFactory( |
+ ui_task_runner, video_capture_task_runner, input_task_runner, |
+ ui_task_runner, |
+ base::Bind(&DesktopProcess::InjectSas, desktop_process.AsWeakPtr()))); |
#else // !defined(OS_WIN) |
desktop_environment_factory.reset(new Me2MeDesktopEnvironmentFactory( |
- ui_task_runner, |
- input_task_runner, |
+ ui_task_runner, video_capture_task_runner, input_task_runner, |
ui_task_runner)); |
#endif // !defined(OS_WIN) |