Chromium Code Reviews| Index: ui/compositor/test/context_factories_for_test.cc |
| diff --git a/ui/compositor/test/context_factories_for_test.cc b/ui/compositor/test/context_factories_for_test.cc |
| index 0c452c529e4b2ff56f257b3cfd209530a953557c..d13782ac061013f361a083eda048a860811cc840 100644 |
| --- a/ui/compositor/test/context_factories_for_test.cc |
| +++ b/ui/compositor/test/context_factories_for_test.cc |
| @@ -15,16 +15,22 @@ |
| namespace ui { |
| static ContextFactory* g_implicit_factory = NULL; |
| +static gfx::DisableNullDrawGLBindings* g_disable_null_draw = NULL; |
|
no sievers
2014/02/21 19:51:49
nit: Shouldn't these statics be in an anonymous na
danakj
2014/02/21 19:56:58
Sure!
|
| // static |
| void InitializeContextFactoryForTests(bool enable_pixel_output) { |
| DCHECK(!g_implicit_factory) << |
| "ContextFactory for tests already initialized."; |
| + CommandLine* command_line = CommandLine::ForCurrentProcess(); |
| + if (command_line->HasSwitch(switches::kEnablePixelOutputInTests)) |
| + enable_pixel_output = true; |
| bool use_test_contexts = true; |
| + if (gfx::HasInitializedNullDrawGLBindings()) |
| + use_test_contexts = false; |
|
no sievers
2014/02/21 19:51:49
Is that ok even if enable_pixel_output == true?
danakj
2014/02/21 19:56:58
Ya, the gfx::DisableNullDrawGLBindings down below
|
| + |
| // Always use test contexts unless the disable command line flag is used. |
| - CommandLine* command_line = CommandLine::ForCurrentProcess(); |
| if (command_line->HasSwitch(switches::kDisableTestCompositor)) |
| use_test_contexts = false; |
| @@ -43,6 +49,8 @@ void InitializeContextFactoryForTests(bool enable_pixel_output) { |
| } else { |
| DCHECK_NE(gfx::kGLImplementationNone, gfx::GetGLImplementation()); |
| DVLOG(1) << "Using InProcessContextFactory"; |
| + if (enable_pixel_output && gfx::HasInitializedNullDrawGLBindings()) |
| + g_disable_null_draw = new gfx::DisableNullDrawGLBindings; |
| g_implicit_factory = new ui::InProcessContextFactory(); |
| } |
| ContextFactory::SetInstance(g_implicit_factory); |
| @@ -52,6 +60,8 @@ void TerminateContextFactoryForTests() { |
| ContextFactory::SetInstance(NULL); |
| delete g_implicit_factory; |
| g_implicit_factory = NULL; |
| + delete g_disable_null_draw; |
| + g_disable_null_draw = NULL; |
| } |
| } // namespace ui |