summaryrefslogtreecommitdiffstats
path: root/src/mesa/state_tracker
diff options
context:
space:
mode:
authorMarek Olšák <[email protected]>2012-11-11 16:29:00 +0100
committerMarek Olšák <[email protected]>2012-11-12 21:37:31 +0100
commit6dd839f23a8ee7b6853f7320a2715df44040b358 (patch)
tree1c00d2b705ec809f1b09d3fc77159ae643ac77c5 /src/mesa/state_tracker
parentc06258dd0297e1fe7910f48a59aa0de79029ce39 (diff)
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 <[email protected]> Reviewed-by: Dave Airlie <[email protected]>
Diffstat (limited to 'src/mesa/state_tracker')
-rw-r--r--src/mesa/state_tracker/st_cb_texture.c6
1 files changed, 2 insertions, 4 deletions
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 */