Add rate-limited logging for unimplemented es functions.

Bug: 17322013

Change-Id: I7aa5ab2f76cf344cfb75802edbfd44e8e7526ff1
This commit is contained in:
Michael Lentine 2014-09-11 12:24:13 -07:00
parent d94854030c
commit 12c4bdad7b

View File

@ -330,7 +330,20 @@ EGLBoolean egl_init_drivers() {
return res; return res;
} }
static pthread_mutex_t sLogPrintMutex = PTHREAD_MUTEX_INITIALIZER;
static nsecs_t sLogPrintTime = 0;
#define NSECS_DURATION 1000000000
void gl_unimplemented() { void gl_unimplemented() {
bool printLog = false;
nsecs_t now = systemTime();
pthread_mutex_lock(&sLogPrintMutex);
if ((now - sLogPrintTime) > NSECS_DURATION) {
sLogPrintTime = now;
printLog = true;
}
pthread_mutex_unlock(&sLogPrintMutex);
if (printLog) {
ALOGE("called unimplemented OpenGL ES API"); ALOGE("called unimplemented OpenGL ES API");
char value[PROPERTY_VALUE_MAX]; char value[PROPERTY_VALUE_MAX];
property_get("debug.egl.callstack", value, "0"); property_get("debug.egl.callstack", value, "0");
@ -338,6 +351,7 @@ void gl_unimplemented() {
CallStack stack(LOG_TAG); CallStack stack(LOG_TAG);
} }
} }
}
void gl_noop() { void gl_noop() {
} }