[Mesa-dev] [PATCH 14/45] st/nine: Unset vtxbuf on reset

Ilia Mirkin imirkin at alum.mit.edu
Fri Jan 29 08:49:41 PST 2016


On Fri, Jan 29, 2016 at 11:08 AM, Axel Davy <axel.davy at ens.fr> wrote:
> We forgot to reset vtxbuf.
> This fixes some crashes.
>
> Signed-off-by: Axel Davy <axel.davy at ens.fr>
> Reviewed-by: Patrick Rudolph <siro at das-labor.org>
> ---
>  src/gallium/state_trackers/nine/nine_state.c | 4 +++-
>  1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/src/gallium/state_trackers/nine/nine_state.c b/src/gallium/state_trackers/nine/nine_state.c
> index 2e77d62..561a68e 100644
> --- a/src/gallium/state_trackers/nine/nine_state.c
> +++ b/src/gallium/state_trackers/nine/nine_state.c
> @@ -1314,8 +1314,10 @@ nine_state_clear(struct nine_state *state, const boolean device)
>      nine_bind(&state->vs, NULL);
>      nine_bind(&state->ps, NULL);
>      nine_bind(&state->vdecl, NULL);
> -    for (i = 0; i < PIPE_MAX_ATTRIBS; ++i)
> +    for (i = 0; i < PIPE_MAX_ATTRIBS; ++i) {
>          nine_bind(&state->stream[i], NULL);
> +        state->vtxbuf[i].buffer = NULL;

Not necessarily strictly wrong, but I would have expected a
pipe_resource_reference(&buffer, NULL) -- are you not referencing them
when setting either?

  -ilia

> +    }
>      nine_bind(&state->idxbuf, NULL);
>      for (i = 0; i < NINE_MAX_SAMPLERS; ++i) {
>          if (device &&
> --
> 2.7.0
>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/mesa-dev


More information about the mesa-dev mailing list