drivers/meta: Accept GL_TEXTURE_3D as target for tex image decompression
authorEduardo Lima Mitev <elima@igalia.com>
Tue, 18 Oct 2016 07:55:38 +0000 (09:55 +0200)
committerKenneth Graunke <kenneth@whitecape.org>
Fri, 28 Oct 2016 07:20:32 +0000 (00:20 -0700)
An assert is currently raised, preventing decompression of a texture image into
a GL_TEXTURE_3D target. I have not found any spec wording that would explain
this, or implementation detail that would prevent it. And in any case, the
driver should not cause a crash upon user input arguments.

Fixes most failing subcases in CTS tests:
* GL44-CTS.gtf32.GL3Tests.packed_pixels.packed_pixels_pixelstore
* GL45-CTS.gtf32.GL3Tests.packed_pixels.packed_pixels_pixelstore

These tests were crashing the driver before. Now they just fail, but due
to an unrelated issue affecting 2 out of the 45 test subcases.

No regressions observed against piglit or CTS-GL.

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
src/mesa/drivers/common/meta.c

index 7d131b6ccfa9fe4492fce4bcb923b4e81ee2cd05..5ab1e6ca285052431cc3ea9f74325e8fda288abd 100644 (file)
@@ -3026,10 +3026,6 @@ decompress_texture_image(struct gl_context *ctx,
       assert(!"No compressed 1D textures.");
       return false;
 
-   case GL_TEXTURE_3D:
-      assert(!"No compressed 3D textures.");
-      return false;
-
    case GL_TEXTURE_CUBE_MAP_ARRAY:
       faceTarget = GL_TEXTURE_CUBE_MAP_POSITIVE_X + (slice % 6);
       break;