diff options
author | kgr@chromium.org <kgr@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-05-09 19:58:59 +0000 |
---|---|---|
committer | kgr@chromium.org <kgr@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-05-09 19:58:59 +0000 |
commit | a98e945abdfd58229e90f2cbfb8b2ec4173f4b0d (patch) | |
tree | cc83983e17f210921cf31fccc8e16395141d1a86 /ui/gfx | |
parent | ec32a9058abc2eccedcfef1d1e20f5d0abc50df9 (diff) | |
download | chromium_src-a98e945abdfd58229e90f2cbfb8b2ec4173f4b0d.zip chromium_src-a98e945abdfd58229e90f2cbfb8b2ec4173f4b0d.tar.gz chromium_src-a98e945abdfd58229e90f2cbfb8b2ec4173f4b0d.tar.bz2 |
Removed tracing when the context is already current.
This greatly reduces the number of trace events which are generated.
Now, it only traces when the context changes (which is very close to
0% of the time.)
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com/10181003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@136102 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ui/gfx')
-rw-r--r-- | ui/gfx/gl/gl_context_cgl.cc | 3 | ||||
-rw-r--r-- | ui/gfx/gl/gl_context_egl.cc | 3 | ||||
-rw-r--r-- | ui/gfx/gl/gl_context_wgl.cc | 3 |
3 files changed, 6 insertions, 3 deletions
diff --git a/ui/gfx/gl/gl_context_cgl.cc b/ui/gfx/gl/gl_context_cgl.cc index 4aa7ee7..46bb7ab 100644 --- a/ui/gfx/gl/gl_context_cgl.cc +++ b/ui/gfx/gl/gl_context_cgl.cc @@ -84,11 +84,12 @@ void GLContextCGL::Destroy() { } bool GLContextCGL::MakeCurrent(GLSurface* surface) { - TRACE_EVENT0("gpu", "GLContextCGL::MakeCurrent"); DCHECK(context_); if (IsCurrent(surface)) return true; + TRACE_EVENT0("gpu", "GLContextCGL::MakeCurrent"); + if (CGLSetCurrentContext( static_cast<CGLContextObj>(context_)) != kCGLNoError) { LOG(ERROR) << "Unable to make gl context current."; diff --git a/ui/gfx/gl/gl_context_egl.cc b/ui/gfx/gl/gl_context_egl.cc index b0a95e2..b41fea7 100644 --- a/ui/gfx/gl/gl_context_egl.cc +++ b/ui/gfx/gl/gl_context_egl.cc @@ -84,11 +84,12 @@ void GLContextEGL::Destroy() { } bool GLContextEGL::MakeCurrent(GLSurface* surface) { - TRACE_EVENT0("gpu", "GLContextEGL::MakeCurrent"); DCHECK(context_); if (IsCurrent(surface)) return true; + TRACE_EVENT0("gpu", "GLContextEGL::MakeCurrent"); + if (!eglMakeCurrent(display_, surface->GetHandle(), surface->GetHandle(), diff --git a/ui/gfx/gl/gl_context_wgl.cc b/ui/gfx/gl/gl_context_wgl.cc index 1737146..d977302 100644 --- a/ui/gfx/gl/gl_context_wgl.cc +++ b/ui/gfx/gl/gl_context_wgl.cc @@ -70,11 +70,12 @@ void GLContextWGL::Destroy() { } bool GLContextWGL::MakeCurrent(GLSurface* surface) { - TRACE_EVENT0("gpu", "GLContextWGL::MakeCurrent"); DCHECK(context_); if (IsCurrent(surface)) return true; + TRACE_EVENT0("gpu", "GLContextWGL::MakeCurrent"); + if (!wglMakeCurrent(static_cast<HDC>(surface->GetHandle()), context_)) { LOG(ERROR) << "Unable to make gl context current."; return false; |