diff options
author | José Fonseca <jfonseca@vmware.com> | 2012-07-06 18:31:15 +0100 |
---|---|---|
committer | José Fonseca <jfonseca@vmware.com> | 2012-07-06 18:35:44 +0100 |
commit | d78dee167117cbdeab5807e151cac0e347812497 (patch) | |
tree | 7aa9b428b01e3e6873d135fdb3ad422cf2a00827 /src/gallium/drivers | |
parent | fe602da63f0a65a30d3476c756c4a201ea88b3c5 (diff) | |
download | external_mesa3d-d78dee167117cbdeab5807e151cac0e347812497.zip external_mesa3d-d78dee167117cbdeab5807e151cac0e347812497.tar.gz external_mesa3d-d78dee167117cbdeab5807e151cac0e347812497.tar.bz2 |
galahad: Use reference counting when destroying the wraped objects.
As the wrapped pipe driver may hold internal references.
Diffstat (limited to 'src/gallium/drivers')
-rw-r--r-- | src/gallium/drivers/galahad/glhd_objects.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/src/gallium/drivers/galahad/glhd_objects.c b/src/gallium/drivers/galahad/glhd_objects.c index badd2e1..b44adff 100644 --- a/src/gallium/drivers/galahad/glhd_objects.c +++ b/src/gallium/drivers/galahad/glhd_objects.c @@ -105,7 +105,7 @@ galahad_surface_destroy(struct galahad_context *glhd_context, struct galahad_surface *glhd_surface) { pipe_resource_reference(&glhd_surface->base.texture, NULL); - glhd_context->pipe->surface_destroy(glhd_context->pipe, glhd_surface->surface); + pipe_surface_reference(&glhd_surface->surface, NULL); FREE(glhd_surface); } @@ -140,9 +140,8 @@ void galahad_sampler_view_destroy(struct galahad_context *glhd_context, struct galahad_sampler_view *glhd_view) { + pipe_sampler_view_reference(&glhd_view->sampler_view, NULL); pipe_resource_reference(&glhd_view->base.texture, NULL); - glhd_context->pipe->sampler_view_destroy(glhd_context->pipe, - glhd_view->sampler_view); FREE(glhd_view); } |