summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNicolai Hähnle <nicolai.haehnle@amd.com>2016-06-24 16:35:36 +0200
committerNicolai Hähnle <nicolai.haehnle@amd.com>2016-07-01 17:54:40 +0200
commit0ba053b34c29106817568996ac53b41029cf4e4c (patch)
tree0a00dfba1b730ed75306f74ee953431a3a701311
parentde772bc060fb401e30cfbfa4ae3973fb025865e5 (diff)
st/mesa: an incomplete texture may have a zero-size first image
Fixes a regression introduced by commit 42624ea83 which triggered an assertion in dEQP-GLES2.functional.texture.completeness.cube.not_positive_level_0 While stImage must have a non-zero size as verified by the caller, we also look at the size of the base image in an attempt to make a better guess at the level0 size (this is important when the base image size is odd). However, the base image may have a zero size even when it exists. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=96629 Cc: 12.0 <mesa-stable@lists.freedesktop.org> Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu>
-rw-r--r--src/mesa/state_tracker/st_cb_texture.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/mesa/state_tracker/st_cb_texture.c b/src/mesa/state_tracker/st_cb_texture.c
index 088ac9e0ef6b..1474d973861f 100644
--- a/src/mesa/state_tracker/st_cb_texture.c
+++ b/src/mesa/state_tracker/st_cb_texture.c
@@ -472,6 +472,9 @@ guess_and_alloc_texture(struct st_context *st,
*/
firstImage = _mesa_base_tex_image(&stObj->base);
if (firstImage &&
+ firstImage->Width2 > 0 &&
+ firstImage->Height2 > 0 &&
+ firstImage->Depth2 > 0 &&
guess_base_level_size(stObj->base.Target,
firstImage->Width2,
firstImage->Height2,