From: Marek Olšák Date: Sun, 11 Nov 2012 15:29:00 +0000 (+0100) Subject: st/mesa: fix computation of last_level during texture creation X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=6dd839f23a8ee7b6853f7320a2715df44040b358;p=mesa.git st/mesa: fix computation of last_level during texture creation Array textures were broken. NOTE: This is a candidate for the stable branches. Reviewed-by: Brian Paul Reviewed-by: Dave Airlie --- diff --git a/src/mesa/state_tracker/st_cb_texture.c b/src/mesa/state_tracker/st_cb_texture.c index 9619dd290ed..f06814f9cd3 100644 --- a/src/mesa/state_tracker/st_cb_texture.c +++ b/src/mesa/state_tracker/st_cb_texture.c @@ -384,10 +384,8 @@ guess_and_alloc_texture(struct st_context *st, } else { /* alloc space for a full mipmap */ - GLuint l2width = util_logbase2(width); - GLuint l2height = util_logbase2(height); - GLuint l2depth = util_logbase2(depth); - lastLevel = MAX2(MAX2(l2width, l2height), l2depth); + lastLevel = _mesa_get_tex_max_num_levels(stObj->base.Target, + width, height, depth) - 1; } /* Save the level=0 dimensions */