diff options
author | Romain Guy <romainguy@google.com> | 2012-09-27 15:47:10 -0700 |
---|---|---|
committer | Romain Guy <romainguy@google.com> | 2012-09-27 15:47:10 -0700 |
commit | f12fe43e8c280923fde743f22cea238e48c929f1 (patch) | |
tree | 5d61f71d3bb63f74d4213599dda5eab3a386a34e | |
parent | 1e83690c6030b33c7776fa65cb57132d5e2d0b40 (diff) | |
download | frameworks_native-f12fe43e8c280923fde743f22cea238e48c929f1.zip frameworks_native-f12fe43e8c280923fde743f22cea238e48c929f1.tar.gz frameworks_native-f12fe43e8c280923fde743f22cea238e48c929f1.tar.bz2 |
New compile-time flags to make debugging easier for us poor souls
Bug #7195815
Change-Id: I23e7ac991891b9586cb8ed20b1305c8b1b3e2b43
-rw-r--r-- | opengl/libs/GLES2/gl2.cpp | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/opengl/libs/GLES2/gl2.cpp b/opengl/libs/GLES2/gl2.cpp index b00af1b..9e52298 100644 --- a/opengl/libs/GLES2/gl2.cpp +++ b/opengl/libs/GLES2/gl2.cpp @@ -29,6 +29,8 @@ #define ATRACE_TAG ATRACE_TAG_GRAPHICS #include <utils/Trace.h> +#include <utils/CallStack.h> + #include "hooks.h" #include "egl_impl.h" @@ -43,9 +45,10 @@ using namespace android; #undef CALL_GL_API_RETURN #define DEBUG_CALL_GL_API 0 +#define DEBUG_PRINT_CALL_STACK_ON_ERROR 0 #define SYSTRACE_CALL_GL_API 0 -#if USE_FAST_TLS_KEY +#if USE_FAST_TLS_KEY___ #ifdef HAVE_ARM_TLS_REGISTER #define GET_TLS(reg) \ @@ -86,8 +89,15 @@ using namespace android; gl_hooks_t::gl_t const * const _c = &getGlThreadSpecific()->gl; \ _c->_api(__VA_ARGS__); \ GLenum status = GL_NO_ERROR; \ + bool error = false; \ while ((status = glGetError()) != GL_NO_ERROR) { \ ALOGD("[" #_api "] 0x%x", status); \ + error = true; \ + } \ + if (DEBUG_PRINT_CALL_STACK_ON_ERROR && error) { \ + CallStack s; \ + s.update(); \ + s.dump("glGetError:" #_api); \ } #elif SYSTRACE_CALL_GL_API |