diff options
author | danakj@chromium.org <danakj@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-01-30 01:04:53 +0000 |
---|---|---|
committer | danakj@chromium.org <danakj@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-01-30 01:04:53 +0000 |
commit | a3d4bda4805547161217ebc79c7305b525e8c38b (patch) | |
tree | 380dae77b9f0793c7524c46828f6714ede976a43 /gpu/tools/compositor_model_bench | |
parent | b773065a8fcd6d50575bf290836aa65a02ee0fa5 (diff) | |
download | chromium_src-a3d4bda4805547161217ebc79c7305b525e8c38b.zip chromium_src-a3d4bda4805547161217ebc79c7305b525e8c38b.tar.gz chromium_src-a3d4bda4805547161217ebc79c7305b525e8c38b.tar.bz2 |
Ensure GL initialization only happens once, and provide common init path
Currently tests initialize GL by calling into methods that should be
internal to the gl bindings code. Instead, everyone should go through
GLSurface::InitializeOneOff.
Also GLSurface::InitializeOneOff early outs if it was already called,
leading to a pattern of initializing GL all over the place just in case
and not having a clear idea of where it should be set up. Instead, DCHECK
that it is not called more than once, and move calls to this method to
be during process startup for unit test suites instead of mid-test.
This adds two test variants of InitializeOneOff for tests to call, that
set up OSMesa or Mock GL bindings, via GLSurface::InitializeOneOff.
R=piman, sievers
BUG=270918
Review URL: https://codereview.chromium.org/135213003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@247793 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'gpu/tools/compositor_model_bench')
-rw-r--r-- | gpu/tools/compositor_model_bench/compositor_model_bench.cc | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/gpu/tools/compositor_model_bench/compositor_model_bench.cc b/gpu/tools/compositor_model_bench/compositor_model_bench.cc index 44ce333..6c60382 100644 --- a/gpu/tools/compositor_model_bench/compositor_model_bench.cc +++ b/gpu/tools/compositor_model_bench/compositor_model_bench.cc @@ -31,11 +31,10 @@ #include "base/memory/scoped_ptr.h" #include "base/message_loop/message_loop.h" #include "base/time/time.h" - #include "gpu/tools/compositor_model_bench/render_model_utils.h" #include "gpu/tools/compositor_model_bench/render_models.h" #include "gpu/tools/compositor_model_bench/render_tree.h" - +#include "ui/gl/gl_surface.h" using base::TimeTicks; using base::DirectoryExists; @@ -186,8 +185,8 @@ class Simulator { // Initialize the OpenGL context. bool InitGLContext() { - if (!InitializeStaticGLBindings(gfx::kGLImplementationDesktopGL)) { - LOG(FATAL) << "InitializeStaticGLBindings failed"; + if (!gfx::GLSurface::InitializeOneOff()) { + LOG(FATAL) << "gfx::GLSurface::InitializeOneOff failed"; return false; } |