diff options
| author | Mathias Agopian <mathias@google.com> | 2010-09-23 18:14:44 -0700 |
|---|---|---|
| committer | Android (Google) Code Review <android-gerrit@google.com> | 2010-09-23 18:14:44 -0700 |
| commit | 524a6d8e9bb4df9cec0520ac1d9733642b13e76f (patch) | |
| tree | f2fe7f12399657e5bdec75349ff633944a1884c0 | |
| parent | a7bfe6ad763208942d74a15933e2de1a3e06eba0 (diff) | |
| parent | 25b388c43bd0444985776c4d129e0ccaef9b6229 (diff) | |
| download | frameworks_base-524a6d8e9bb4df9cec0520ac1d9733642b13e76f.zip frameworks_base-524a6d8e9bb4df9cec0520ac1d9733642b13e76f.tar.gz frameworks_base-524a6d8e9bb4df9cec0520ac1d9733642b13e76f.tar.bz2 | |
Merge "better fix for [3028370] GL get error should return a valid error if no context is bound." into gingerbread
| -rw-r--r-- | opengl/libs/EGL/egl.cpp | 11 | ||||
| -rw-r--r-- | opengl/libs/GLES2/gl2.cpp | 1 | ||||
| -rw-r--r-- | opengl/libs/GLES_CM/gl.cpp | 1 |
3 files changed, 4 insertions, 9 deletions
diff --git a/opengl/libs/EGL/egl.cpp b/opengl/libs/EGL/egl.cpp index 0437263..2d1a278 100644 --- a/opengl/libs/EGL/egl.cpp +++ b/opengl/libs/EGL/egl.cpp @@ -428,19 +428,14 @@ static void(*findProcAddress(const char* name, // ---------------------------------------------------------------------------- -static void gl_no_context() { +static int gl_no_context() { tls_t* tls = getTLS(); if (tls->logCallWithNoContext == EGL_TRUE) { tls->logCallWithNoContext = EGL_FALSE; LOGE("call to OpenGL ES API with no current context " "(logged once per thread)"); } -} - -// Always return GL_INVALID_OPERATION from glGetError() when called from -// a thread without a bound context. -static GLenum gl_no_context_glGetError() { - return GL_INVALID_OPERATION; + return 0; } static void early_egl_init(void) @@ -454,8 +449,6 @@ static void early_egl_init(void) addr, sizeof(gHooksNoContext)); - gHooksNoContext.gl.glGetError = gl_no_context_glGetError; - setGlThreadSpecific(&gHooksNoContext); } diff --git a/opengl/libs/GLES2/gl2.cpp b/opengl/libs/GLES2/gl2.cpp index 924737e..18dd483 100644 --- a/opengl/libs/GLES2/gl2.cpp +++ b/opengl/libs/GLES2/gl2.cpp @@ -58,6 +58,7 @@ using namespace android; "ldr r12, [r12, %[tls]] \n" \ "cmp r12, #0 \n" \ "ldrne pc, [r12, %[api]] \n" \ + "mov r0, #0 \n" \ "bx lr \n" \ : \ : [tls] "J"(TLS_SLOT_OPENGL_API*4), \ diff --git a/opengl/libs/GLES_CM/gl.cpp b/opengl/libs/GLES_CM/gl.cpp index d71ff76..ee29f12 100644 --- a/opengl/libs/GLES_CM/gl.cpp +++ b/opengl/libs/GLES_CM/gl.cpp @@ -114,6 +114,7 @@ GL_API void GL_APIENTRY glWeightPointerOESBounds(GLint size, GLenum type, "ldr r12, [r12, %[tls]] \n" \ "cmp r12, #0 \n" \ "ldrne pc, [r12, %[api]] \n" \ + "mov r0, #0 \n" \ "bx lr \n" \ : \ : [tls] "J"(TLS_SLOT_OPENGL_API*4), \ |
