aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGeoff Lang <geofflang@chromium.org>2024-04-29 15:27:36 -0400
committerAngle LUCI CQ <angle-scoped@luci-project-accounts.iam.gserviceaccount.com>2024-05-01 15:49:54 +0000
commit1bb1ee061fe0bce322fb93b447a72e72c993a1f2 (patch)
tree0ff691eacd65a7f53141974dc4af7547267657e9
parent53811e86cc331c146468af679936c574af2ea31a (diff)
downloadangle-1bb1ee061fe0bce322fb93b447a72e72c993a1f2.tar.gz
GL: Sync unpack state for glCompressedTexSubImage3D
Unpack state is supposed to be ignored for compressed tex image calls but some drivers use it anyways and read incorrect data. Texture3DTestES3.PixelUnpackStateTexSubImage covers this case. Bug: chromium:337766133 Change-Id: Ic11a056113b1850bd5b4d6840527164a12849a22 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5498735 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
-rw-r--r--src/libANGLE/renderer/gl/TextureGL.cpp1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/libANGLE/renderer/gl/TextureGL.cpp b/src/libANGLE/renderer/gl/TextureGL.cpp
index 2e3d4c8529..485847b244 100644
--- a/src/libANGLE/renderer/gl/TextureGL.cpp
+++ b/src/libANGLE/renderer/gl/TextureGL.cpp
@@ -664,6 +664,7 @@ angle::Result TextureGL::setCompressedSubImage(const gl::Context *context,
nativegl::GetCompressedSubTexImageFormat(functions, features, format);
stateManager->bindTexture(getType(), mTextureID);
+ ANGLE_TRY(stateManager->setPixelUnpackState(context, unpack));
if (nativegl::UseTexImage2D(getType()))
{
ASSERT(area.z == 0 && area.depth == 1);