[Mesa-dev] [PATCH 1/2] Gallium:draw:aaline and aapoint: Restore the old hooks when we destroy our stage.

Jose Fonseca jfonseca at vmware.com
Wed Jun 29 03:28:15 PDT 2011


Looks a good thing to do.

Jose

----- Original Message -----
> ---
>  src/gallium/auxiliary/draw/draw_pipe_aaline.c  |    8 ++++++++
>  src/gallium/auxiliary/draw/draw_pipe_aapoint.c |    9 +++++++++
>  2 files changed, 17 insertions(+), 0 deletions(-)
> 
> diff --git a/src/gallium/auxiliary/draw/draw_pipe_aaline.c
> b/src/gallium/auxiliary/draw/draw_pipe_aaline.c
> index 32af29a..458f85d 100644
> --- a/src/gallium/auxiliary/draw/draw_pipe_aaline.c
> +++ b/src/gallium/auxiliary/draw/draw_pipe_aaline.c
> @@ -784,6 +784,14 @@ aaline_destroy(struct draw_stage *stage)
>  
>     draw_free_temp_verts( stage );
>  
> +   /* restore the old entry points */
> +   pipe->create_fs_state = aaline->driver_create_fs_state;
> +   pipe->bind_fs_state = aaline->driver_bind_fs_state;
> +   pipe->delete_fs_state = aaline->driver_delete_fs_state;
> +
> +   pipe->bind_fragment_sampler_states =
> aaline->driver_bind_sampler_states;
> +   pipe->set_fragment_sampler_views =
> aaline->driver_set_sampler_views;
> +
>     FREE( stage );
>  }
>  
> diff --git a/src/gallium/auxiliary/draw/draw_pipe_aapoint.c
> b/src/gallium/auxiliary/draw/draw_pipe_aapoint.c
> index 60f6380..9265c37 100644
> --- a/src/gallium/auxiliary/draw/draw_pipe_aapoint.c
> +++ b/src/gallium/auxiliary/draw/draw_pipe_aapoint.c
> @@ -768,7 +768,16 @@ aapoint_reset_stipple_counter(struct draw_stage
> *stage)
>  static void
>  aapoint_destroy(struct draw_stage *stage)
>  {
> +   struct aapoint_stage* aapoint = aapoint_stage(stage);
> +   struct pipe_context *pipe = stage->draw->pipe;
> +
>     draw_free_temp_verts( stage );
> +
> +   /* restore the old entry points */
> +   pipe->create_fs_state = aapoint->driver_create_fs_state;
> +   pipe->bind_fs_state = aapoint->driver_bind_fs_state;
> +   pipe->delete_fs_state = aapoint->driver_delete_fs_state;
> +
>     FREE( stage );
>  }
>  
> --
> 1.7.5.3.367.ga9930
> 
> _______________________________________________
> 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