diff options
| author | Jesse Hall <jessehall@google.com> | 2011-11-14 11:43:41 -0800 |
|---|---|---|
| committer | Jesse Hall <jessehall@google.com> | 2011-11-18 14:11:49 -0800 |
| commit | faaf1553cfa39c23ceb198ba7edbd46ff3a11f7a (patch) | |
| tree | 1c062861a2927ad6d558c1a10d0c08ad8dedc76b | |
| parent | 512ea9b6f8cc75ec74a7ab8d1c38dec201667f1e (diff) | |
EmuGL: set texture info from EGLImage
The EGL->GL translator implementation of glEGLImageTargetTexture2DOES was
properly replacing uses of the target texture object with the texture object
associated with the EGLImage in the host GL library, but wasn't updating its
own info about the texture (dimensions, etc.). This broke places where the
translator relied on knowing this, e.g. when implementing the GLES glDrawTexi
call on top of GL glDrawArrays.
Change-Id: Ia4aefd89852a2609221c56da76bfac927464c0b2
| -rw-r--r-- | tools/emulator/opengl/host/libs/Translator/GLES_CM/GLEScmImp.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/tools/emulator/opengl/host/libs/Translator/GLES_CM/GLEScmImp.cpp b/tools/emulator/opengl/host/libs/Translator/GLES_CM/GLEScmImp.cpp index 9ef936275..903ddac48 100644 --- a/tools/emulator/opengl/host/libs/Translator/GLES_CM/GLEScmImp.cpp +++ b/tools/emulator/opengl/host/libs/Translator/GLES_CM/GLEScmImp.cpp @@ -1673,6 +1673,10 @@ GL_API void GL_APIENTRY glEGLImageTargetTexture2DOES(GLenum target, GLeglImageOE ctx->dispatcher().glBindTexture(GL_TEXTURE_2D, img->globalTexName); TextureData *texData = getTextureTargetData(target); SET_ERROR_IF(texData==NULL,GL_INVALID_OPERATION); + texData->width = img->width; + texData->height = img->height; + texData->border = img->border; + texData->internalFormat = img->internalFormat; texData->sourceEGLImage = (unsigned int)image; texData->eglImageDetach = s_eglIface->eglDetachEGLImage; } |
