diff options
author | Michel Dänzer <michel.daenzer@amd.com> | 2012-10-22 19:20:56 +0200 |
---|---|---|
committer | Michel Dänzer <michel@daenzer.net> | 2012-10-24 17:54:25 +0200 |
commit | eee1ff423c6a0c9c776b4e76b79bb5ed5480d83c (patch) | |
tree | a0ee20c68a9cf4b8fdd602ecd96345556598f7bc /src/mesa | |
parent | ecb02c27fc02c7212c23e96bf74d620a81b13583 (diff) |
st/mesa: Fix assertions for copying texture image to finalized miptree.
The layer dimension of array textures is not subject to mipmap minification.
OTOH we were missing an assertion for the depth dimension.
Fixes assertion failures with piglit {f,v}s-textureSize-sampler1DArrayShadow.
For some reason, they only resulted in piglit 'warn' results for me, not
failures.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=56211
NOTE: This is a candidate for the stable branches.
Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
Tested-by: Andreas Boll <andreas.boll.dev@gmail.com>
Diffstat (limited to 'src/mesa')
-rw-r--r-- | src/mesa/state_tracker/st_cb_texture.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/mesa/state_tracker/st_cb_texture.c b/src/mesa/state_tracker/st_cb_texture.c index b19dc67bfbb..6c287b3d482 100644 --- a/src/mesa/state_tracker/st_cb_texture.c +++ b/src/mesa/state_tracker/st_cb_texture.c @@ -1120,7 +1120,10 @@ copy_image_data_to_texture(struct st_context *st, assert(src_level <= stImage->pt->last_level); assert(u_minify(stImage->pt->width0, src_level) == stImage->base.Width); - assert(u_minify(stImage->pt->height0, src_level) == stImage->base.Height); + assert(stImage->pt->target == PIPE_TEXTURE_1D_ARRAY || + u_minify(stImage->pt->height0, src_level) == stImage->base.Height); + assert(stImage->pt->target == PIPE_TEXTURE_2D_ARRAY || + u_minify(stImage->pt->depth0, src_level) == stImage->base.Depth); st_texture_image_copy(st->pipe, stObj->pt, dstLevel, /* dest texture, level */ |