Am 14.10.2015 um 18:03 schrieb Krzysztof A. Sobiecki:
> From: Krzysztof Sobiecki <sob...@gmail.com>
> 
> pipe_surface_reference have problems with deleted contexts,
> so use of pipe_surface_release might be more appropriate.
> 
> Fixes Wasteland 2 Director's Cut crash on start.
> ---
>  src/mesa/state_tracker/st_cb_fbo.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/src/mesa/state_tracker/st_cb_fbo.c 
> b/src/mesa/state_tracker/st_cb_fbo.c
> index ff703fa..2a2eb09 100644
> --- a/src/mesa/state_tracker/st_cb_fbo.c
> +++ b/src/mesa/state_tracker/st_cb_fbo.c
> @@ -456,7 +456,7 @@ st_update_renderbuffer_surface(struct st_context *st,
>        surf_tmpl.u.tex.first_layer = first_layer;
>        surf_tmpl.u.tex.last_layer = last_layer;
>  
> -      pipe_surface_reference(&strb->surface, NULL);
> +      pipe_surface_release(pipe, &strb->surface);
>  
>        strb->surface = pipe->create_surface(pipe, resource, &surf_tmpl);
>     }
> 

Sounds to me like the surface gets deleted in another context - since
surfaces are per context this is illegal.
So, in other words, you're exchanging one bug for another. Albeit this
might be preferable for now...

Roland

_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to