diff options
author | Nicolai Hähnle <nicolai.haehnle@amd.com> | 2016-06-24 16:35:36 +0200 |
---|---|---|
committer | Nicolai Hähnle <nicolai.haehnle@amd.com> | 2016-07-01 17:54:40 +0200 |
commit | 0ba053b34c29106817568996ac53b41029cf4e4c (patch) | |
tree | 0a00dfba1b730ed75306f74ee953431a3a701311 | |
parent | de772bc060fb401e30cfbfa4ae3973fb025865e5 (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.c | 3 |
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, |