summaryrefslogtreecommitdiffstats
path: root/cc/test/layer_tree_pixel_test.cc
diff options
context:
space:
mode:
authorkbr@chromium.org <kbr@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-01-31 00:49:49 +0000
committerkbr@chromium.org <kbr@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-01-31 00:49:49 +0000
commitf2e336a4de167f0618bb9e6c602037a52a10788c (patch)
treef90c60527cc10a67227ddf900969a582d1e1def1 /cc/test/layer_tree_pixel_test.cc
parentadeda57080446a169b93bd361978de3dbbed0f40 (diff)
downloadchromium_src-f2e336a4de167f0618bb9e6c602037a52a10788c.zip
chromium_src-f2e336a4de167f0618bb9e6c602037a52a10788c.tar.gz
chromium_src-f2e336a4de167f0618bb9e6c602037a52a10788c.tar.bz2
Revert 248049 "Ensure GL initialization only happens once, and p..."
Caused content_gl_tests to start failing on all Mac Release GPU bots. See Issue 339658 for details. > 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 > > Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=247793 > > Review URL: https://codereview.chromium.org/135213003 TBR=danakj@chromium.org BUG=270918,339658 Review URL: https://codereview.chromium.org/151003002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@248093 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'cc/test/layer_tree_pixel_test.cc')
-rw-r--r--cc/test/layer_tree_pixel_test.cc5
1 files changed, 5 insertions, 0 deletions
diff --git a/cc/test/layer_tree_pixel_test.cc b/cc/test/layer_tree_pixel_test.cc
index 2792f66..c5d2125 100644
--- a/cc/test/layer_tree_pixel_test.cc
+++ b/cc/test/layer_tree_pixel_test.cc
@@ -21,6 +21,7 @@
#include "cc/trees/layer_tree_impl.h"
#include "gpu/command_buffer/client/gl_in_process_context.h"
#include "gpu/command_buffer/client/gles2_implementation.h"
+#include "ui/gl/gl_implementation.h"
using gpu::gles2::GLES2Interface;
@@ -54,6 +55,8 @@ scoped_ptr<OutputSurface> LayerTreePixelTest::CreateOutputSurface(
case GL_WITH_DEFAULT:
case GL_WITH_BITMAP: {
+ CHECK(gfx::InitializeStaticGLBindings(gfx::kGLImplementationOSMesaGL));
+
output_surface = make_scoped_ptr(
new PixelTestOutputSurface(new TestInProcessContextProvider));
break;
@@ -313,6 +316,8 @@ void LayerTreePixelTest::CopyBitmapToTextureMailboxAsTexture(
DCHECK_GT(bitmap.width(), 0);
DCHECK_GT(bitmap.height(), 0);
+ CHECK(gfx::InitializeStaticGLBindings(gfx::kGLImplementationOSMesaGL));
+
scoped_ptr<gpu::GLInProcessContext> context = CreateTestInProcessContext();
GLES2Interface* gl = context->GetImplementation();