diff options
author | David 'Digit' Turner <digit@google.com> | 2014-06-04 11:15:53 +0200 |
---|---|---|
committer | David 'Digit' Turner <digit@google.com> | 2014-06-04 11:15:53 +0200 |
commit | f7ca633e49f6f490efd875f63708017bdbb0084c (patch) | |
tree | 5614b94a998a68c6b801aaeaa568037b0e2c9263 | |
parent | a509402a6b907a871b62f89ea713ff63286c23ae (diff) | |
download | sdk-f7ca633e49f6f490efd875f63708017bdbb0084c.zip sdk-f7ca633e49f6f490efd875f63708017bdbb0084c.tar.gz sdk-f7ca633e49f6f490efd875f63708017bdbb0084c.tar.bz2 |
emulator/opengl: Fix GPU emulation library crash on Windows.
The definitions of two EGL translator functions were missing
EGLAPI / EGLAPIENTRY macros. On Windows, these enforces the
__stdcall procedure call modifier, which changes the way the
stack pointer is modified on function exit.
Without this patch, a call to these function will result in
a corrupted stack pointer in the caller, quickly followed by
a random crash.
BUG=15402623
Change-Id: Ia0f7ebef29e1252086fb59ebf2e6f907c2a69487
-rw-r--r-- | emulator/opengl/host/libs/Translator/EGL/EglImp.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/emulator/opengl/host/libs/Translator/EGL/EglImp.cpp b/emulator/opengl/host/libs/Translator/EGL/EglImp.cpp index 58180ed..8896698 100644 --- a/emulator/opengl/host/libs/Translator/EGL/EglImp.cpp +++ b/emulator/opengl/host/libs/Translator/EGL/EglImp.cpp @@ -1022,7 +1022,7 @@ void detachEGLImage(unsigned int imageId) } -EGLImageKHR eglCreateImageKHR(EGLDisplay display, EGLContext context, EGLenum target, EGLClientBuffer buffer, const EGLint *attrib_list) +EGLAPI EGLImageKHR EGLAPIENTRY eglCreateImageKHR(EGLDisplay display, EGLContext context, EGLenum target, EGLClientBuffer buffer, const EGLint *attrib_list) { VALIDATE_DISPLAY(display); VALIDATE_CONTEXT(context); @@ -1059,7 +1059,7 @@ EGLImageKHR eglCreateImageKHR(EGLDisplay display, EGLContext context, EGLenum ta } -EGLBoolean eglDestroyImageKHR(EGLDisplay display, EGLImageKHR image) +EGLAPI EGLBoolean EGLAPIENTRY eglDestroyImageKHR(EGLDisplay display, EGLImageKHR image) { VALIDATE_DISPLAY(display); return dpy->destroyImageKHR(image) ? EGL_TRUE:EGL_FALSE; |