From 83fed5e13081f2f5c7156f4f706eabbd6a87c5ae Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Wed, 29 Feb 2012 07:52:18 -0700 Subject: [PATCH] svga: fix max_lod clamping in update_tss_binding() MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit After biasing we need to clamp to be sure we don't exceed the number of levels in the mipmap. This fixes an assertion at svga_sampler_view.c:70 v2: simplify the biasing, clamping code per Jose's suggestion. Reviewed-by: José Fonseca --- src/gallium/drivers/svga/svga_state_tss.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/gallium/drivers/svga/svga_state_tss.c b/src/gallium/drivers/svga/svga_state_tss.c index 8eb0dbf4708..d5ed804b0c0 100644 --- a/src/gallium/drivers/svga/svga_state_tss.c +++ b/src/gallium/drivers/svga/svga_state_tss.c @@ -87,8 +87,8 @@ update_tss_binding(struct svga_context *svga, /* get min max lod */ if (sv) { min_lod = MAX2(0, (s->view_min_lod + sv->u.tex.first_level)); - max_lod = MIN2(s->view_max_lod, sv->texture->last_level); - max_lod += sv->u.tex.first_level; + max_lod = MIN2(s->view_max_lod + sv->u.tex.first_level, + sv->texture->last_level); texture = sv->texture; } else { min_lod = 0; -- 2.30.2