Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(285)

Unified Diff: services/ui/gpu/gpu_main.cc

Issue 2629983002: Fix the MessageLoop type in case more than one ozone platform is built (Closed)
Patch Set: Fixed moar feedback from kylechar/fwang Created 3 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: services/ui/gpu/gpu_main.cc
diff --git a/services/ui/gpu/gpu_main.cc b/services/ui/gpu/gpu_main.cc
index a87c7cbe39cdfe1054435e7b8eae149a32dd706b..3a528ca26a5664e60d76b7421c88b8ea8db8c41a 100644
--- a/services/ui/gpu/gpu_main.cc
+++ b/services/ui/gpu/gpu_main.cc
@@ -14,6 +14,10 @@
#include "services/ui/common/server_gpu_memory_buffer_manager.h"
#include "services/ui/gpu/gpu_service.h"
+#if defined(USE_OZONE)
+#include "ui/ozone/public/ozone_platform.h"
+#endif
+
#if defined(OS_MACOSX)
#include "base/message_loop/message_pump_mac.h"
#endif
@@ -51,7 +55,12 @@ GpuMain::GpuMain(mojom::GpuMainRequest request)
#elif defined(USE_X11)
thread_options.message_pump_factory = base::Bind(&CreateMessagePumpX11);
#elif defined(USE_OZONE)
- thread_options.message_loop_type = base::MessageLoop::TYPE_UI;
+ // Create the OzonePlatform instance without doing any initialization.
+ // The MessageLoop type required depends on the Ozone platform selected at
+ // runtime.
+ ui::OzonePlatform::CreateInstance();
sadrul 2017/02/08 01:49:26 We should not have this here.
tonikitoo 2017/02/08 02:42:34 It was originally suggested by kyle in https://cod
+ thread_options.message_loop_type =
+ ui::OzonePlatform::GetInstance()->GetMessageLoopTypeForGpu();
#elif defined(OS_LINUX)
thread_options.message_loop_type = base::MessageLoop::TYPE_DEFAULT;
#elif defined(OS_MACOSX)

Powered by Google App Engine
This is Rietveld 408576698