summaryrefslogtreecommitdiffstats
path: root/opengl
diff options
context:
space:
mode:
authorRomain Guy <romainguy@google.com>2012-09-27 15:47:10 -0700
committerRomain Guy <romainguy@google.com>2012-09-27 15:47:10 -0700
commitf12fe43e8c280923fde743f22cea238e48c929f1 (patch)
tree5d61f71d3bb63f74d4213599dda5eab3a386a34e /opengl
parent1e83690c6030b33c7776fa65cb57132d5e2d0b40 (diff)
downloadframeworks_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
Diffstat (limited to 'opengl')
-rw-r--r--opengl/libs/GLES2/gl2.cpp12
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