From d5e91a2364a497efb75aefe6538e64d4e5ada51a Mon Sep 17 00:00:00 2001 From: Vadim Girlin Date: Sat, 12 Nov 2011 22:23:34 +0400 Subject: [PATCH] r600g: fix stencil buffer ref counting on evergreen Signed-off-by: Vadim Girlin --- src/gallium/drivers/r600/r600_texture.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/gallium/drivers/r600/r600_texture.c b/src/gallium/drivers/r600/r600_texture.c index 50a96b4d4da..8fe1118d19d 100644 --- a/src/gallium/drivers/r600/r600_texture.c +++ b/src/gallium/drivers/r600/r600_texture.c @@ -350,6 +350,9 @@ static void r600_texture_destroy(struct pipe_screen *screen, if (rtex->flushed_depth_texture) pipe_resource_reference((struct pipe_resource **)&rtex->flushed_depth_texture, NULL); + if (rtex->stencil) + pipe_resource_reference((struct pipe_resource **)&rtex->stencil, NULL); + pb_reference(&resource->buf, NULL); FREE(rtex); } @@ -469,7 +472,7 @@ r600_texture_create_object(struct pipe_screen *screen, } if (rtex->stencil) { - rtex->stencil->resource.buf = rtex->resource.buf; + pb_reference(&rtex->stencil->resource.buf, rtex->resource.buf); rtex->stencil->resource.cs_buf = rtex->resource.cs_buf; } return rtex; -- 2.30.2