Mesa (master): st/mesa: Fix EGLImageTargetTexture2D for GL_TEXTURE_2D

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Tue Aug 25 02:28:43 UTC 2020


Module: Mesa
Branch: master
Commit: 5e4d69ec786e56794a995be869b5a9b80d050f2d
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=5e4d69ec786e56794a995be869b5a9b80d050f2d

Author: Woody Chow <woodychow at google.com>
Date:   Wed Aug 19 14:19:12 2020 +0900

st/mesa: Fix EGLImageTargetTexture2D for GL_TEXTURE_2D

Before this change, internalFormat was defaulted to GL_RGBA (
unsized internal format). Therefore, subsequent glTexSubImage2D
call with type != GL_UNSIGNED_BYTE, GL_UNSIGNED_SHORT_4_4_4_4 or
GL_UNSIGNED_SHORT_5_5_5_1 would give GL_INVALID_OPERATION.

This fixes

android.graphics.cts.BitmapColorSpaceTest#test16bitHardware
android.graphics.cts.ImageDecoderTest#testDecodeBitmap*
android.graphics.cts.BitmapTest#testNdkFormatsHardware

in CtsGraphicsTestCases

Reviewed-by: Marek Olšák <marek.olsak at amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6382>

---

 src/mesa/state_tracker/st_cb_eglimage.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/src/mesa/state_tracker/st_cb_eglimage.c b/src/mesa/state_tracker/st_cb_eglimage.c
index 5b03c5eb580..bf25e313091 100644
--- a/src/mesa/state_tracker/st_cb_eglimage.c
+++ b/src/mesa/state_tracker/st_cb_eglimage.c
@@ -327,7 +327,9 @@ st_egl_image_target_texture_2d(struct gl_context *ctx, GLenum target,
                          &native_supported))
       return;
 
-   st_bind_egl_image(ctx, texObj, texImage, &stimg, false, native_supported);
+   st_bind_egl_image(ctx, texObj, texImage, &stimg,
+                     target != GL_TEXTURE_EXTERNAL_OES,
+                     native_supported);
    pipe_resource_reference(&stimg.texture, NULL);
 }
 



More information about the mesa-commit mailing list