[Mesa-dev] [PATCH] st/mesa: fix computation of last_level for array textures
Marek Olšák
maraeo at gmail.com
Sun Nov 11 05:12:03 PST 2012
Please ignore this patch, I'll send a new one.
Marek
On Sun, Nov 11, 2012 at 2:01 PM, Marek Olšák <maraeo at gmail.com> wrote:
> NOTE: This is a candidate for the stable branches.
> ---
> src/mesa/state_tracker/st_gen_mipmap.c | 20 ++++++++++++++++++--
> 1 file changed, 18 insertions(+), 2 deletions(-)
>
> diff --git a/src/mesa/state_tracker/st_gen_mipmap.c b/src/mesa/state_tracker/st_gen_mipmap.c
> index 8892006..7e97edd 100644
> --- a/src/mesa/state_tracker/st_gen_mipmap.c
> +++ b/src/mesa/state_tracker/st_gen_mipmap.c
> @@ -129,8 +129,24 @@ compute_num_levels(struct gl_context *ctx,
> _mesa_get_tex_image(ctx, texObj, target, texObj->BaseLevel);
> GLuint size, numLevels;
>
> - size = MAX2(baseImage->Width2, baseImage->Height2);
> - size = MAX2(size, baseImage->Depth2);
> + switch (target) {
> + case GL_TEXTURE_1D:
> + case GL_TEXTURE_1D_ARRAY:
> + case GL_TEXTURE_CUBE_MAP: /* cubemaps are squares, don't check Height2 */
> + case GL_TEXTURE_CUBE_MAP_ARRAY:
> + size = baseImage->Width2;
> + break;
> + case GL_TEXTURE_2D:
> + case GL_TEXTURE_2D_ARRAY:
> + size = MAX2(baseImage->Width2, baseImage->Height2);
> + break;
> + case GL_TEXTURE_3D:
> + size = MAX3(baseImage->Width2, baseImage->Height2, baseImage->Depth2);
> + break;
> + default:
> + assert(0);
> + return 1;
> + }
>
> numLevels = texObj->BaseLevel;
>
> --
> 1.7.9.5
>
More information about the mesa-dev
mailing list