diff options
author | Dan Stoza <stoza@google.com> | 2014-01-17 11:38:34 -0800 |
---|---|---|
committer | Dan Stoza <stoza@google.com> | 2014-01-17 15:32:27 -0800 |
commit | c3289c41e794117817895653300bd2cf7daa0a01 (patch) | |
tree | c0577cd8245ced1874f7396c6034305cda134b6f /opengl | |
parent | 9fcca4ee1746774cc7a10f4257f4aa50e01ad46e (diff) | |
download | frameworks_native-c3289c41e794117817895653300bd2cf7daa0a01.zip frameworks_native-c3289c41e794117817895653300bd2cf7daa0a01.tar.gz frameworks_native-c3289c41e794117817895653300bd2cf7daa0a01.tar.bz2 |
Make libEGL build cleanly under 64-bit
Change-Id: I255dfb70b166b7469d59352b1acfc7aececa07de
Diffstat (limited to 'opengl')
-rw-r--r-- | opengl/libs/EGL/egl.cpp | 13 | ||||
-rw-r--r-- | opengl/libs/EGL/eglApi.cpp | 2 |
2 files changed, 8 insertions, 7 deletions
diff --git a/opengl/libs/EGL/egl.cpp b/opengl/libs/EGL/egl.cpp index f759e6b..67fbae5 100644 --- a/opengl/libs/EGL/egl.cpp +++ b/opengl/libs/EGL/egl.cpp @@ -27,7 +27,6 @@ #include <cutils/log.h> #include <cutils/atomic.h> #include <cutils/properties.h> -#include <cutils/memory.h> #include <utils/CallStack.h> #include <utils/String8.h> @@ -42,6 +41,8 @@ #include "egl_display.h" #include "egl_object.h" +typedef __eglMustCastToProperFunctionPointerType EGLFuncPointer; + // ---------------------------------------------------------------------------- namespace android { // ---------------------------------------------------------------------------- @@ -234,11 +235,11 @@ static void early_egl_init(void) pthread_key_create(&gGLTraceKey, NULL); initEglTraceLevel(); #endif - uint32_t addr = (uint32_t)((void*)gl_no_context); - android_memset32( - (uint32_t*)(void*)&gHooksNoContext, - addr, - sizeof(gHooksNoContext)); + int numHooks = sizeof(gHooksNoContext) / sizeof(EGLFuncPointer); + EGLFuncPointer *iter = reinterpret_cast<EGLFuncPointer*>(&gHooksNoContext); + for (int hook = 0; hook < numHooks; ++hook) { + *(iter++) = reinterpret_cast<EGLFuncPointer>(gl_no_context); + } setGLHooksThreadSpecific(&gHooksNoContext); } diff --git a/opengl/libs/EGL/eglApi.cpp b/opengl/libs/EGL/eglApi.cpp index b02ee0f..b6ffdb2 100644 --- a/opengl/libs/EGL/eglApi.cpp +++ b/opengl/libs/EGL/eglApi.cpp @@ -204,7 +204,7 @@ EGLDisplay eglGetDisplay(EGLNativeDisplayType display) { clearError(); - uint32_t index = uint32_t(display); + uintptr_t index = reinterpret_cast<uintptr_t>(display); if (index >= NUM_DISPLAYS) { return setError(EGL_BAD_PARAMETER, EGL_NO_DISPLAY); } |