[Mesa-dev] [PATCH] st/xa: Make sure unused samplers are set to NULL
Brian Paul
brianp at vmware.com
Mon Apr 7 13:53:52 PDT 2014
On 04/07/2014 02:48 PM, Thomas Hellstrom wrote:
> renderer_copy_prepare was setting the first sampler but never telling
> the cso code how many samplers were actually used. Fix this.
>
> Cc: "10.1" <mesa-stable at freedesktop.org>
> Signed-off-by: Thomas Hellstrom <thellstrom at vmware.com>
> ---
> src/gallium/state_trackers/xa/xa_renderer.c | 5 +++--
> 1 file changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/src/gallium/state_trackers/xa/xa_renderer.c b/src/gallium/state_trackers/xa/xa_renderer.c
> index 9ba78be..bbd35f0 100644
> --- a/src/gallium/state_trackers/xa/xa_renderer.c
> +++ b/src/gallium/state_trackers/xa/xa_renderer.c
> @@ -422,6 +422,7 @@ renderer_copy_prepare(struct xa_context *r,
> /* sampler */
> {
> struct pipe_sampler_state sampler;
> + const struct pipe_sampler_state *p_sampler = &sampler;
>
> memset(&sampler, 0, sizeof(sampler));
> sampler.wrap_s = PIPE_TEX_WRAP_CLAMP_TO_EDGE;
> @@ -431,8 +432,8 @@ renderer_copy_prepare(struct xa_context *r,
> sampler.min_img_filter = PIPE_TEX_FILTER_NEAREST;
> sampler.mag_img_filter = PIPE_TEX_FILTER_NEAREST;
> sampler.normalized_coords = 1;
> - cso_single_sampler(r->cso, PIPE_SHADER_FRAGMENT, 0, &sampler);
> - cso_single_sampler_done(r->cso, PIPE_SHADER_FRAGMENT);
> + cso_set_samplers(r->cso, PIPE_SHADER_FRAGMENT, 1, &p_sampler);
> + r->num_bound_samplers = 1;
> }
>
> renderer_bind_destination(r, dst_surface,
>
Reviewed-by: Brian Paul <brianp at vmware.com>
More information about the mesa-dev
mailing list