summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichel Dänzer <michel.daenzer@amd.com>2012-01-24 17:57:56 +0100
committerMichel Dänzer <michel@daenzer.net>2012-01-24 17:57:56 +0100
commit7219af5ec184d4f92682e75f3d992ae048005d6a (patch)
tree6a11575b01dc6090a74f59f7aab1fa6abb82e258
parent027ce0c493a85c863df88b43f61aea34bcd4cd58 (diff)
gallium/postprocess: Proper reference counting of pp_jimenezmlaa depth buffer.
Fixes https://bugs.freedesktop.org/show_bug.cgi?id=40776 NOTE: This is a candidate for the stable branches.
-rw-r--r--src/gallium/auxiliary/postprocess/pp_init.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/gallium/auxiliary/postprocess/pp_init.c b/src/gallium/auxiliary/postprocess/pp_init.c
index ef127f8d76e..740d230a1e8 100644
--- a/src/gallium/auxiliary/postprocess/pp_init.c
+++ b/src/gallium/auxiliary/postprocess/pp_init.c
@@ -135,6 +135,7 @@ pp_free_fbos(struct pp_queue_t *ppq)
pipe_surface_reference(&ppq->inner_tmps[i], NULL);
pipe_resource_reference(&ppq->inner_tmp[i], NULL);
}
+ pipe_resource_reference(&ppq->depth, NULL);
pipe_surface_reference(&ppq->stencils, NULL);
pipe_resource_reference(&ppq->stencil, NULL);
@@ -244,7 +245,7 @@ pp_init_fbos(struct pp_queue_t *ppq, unsigned int w,
tmp_res.format = p->surf.format = indepth->format;
tmp_res.bind = p->surf.usage = PIPE_BIND_DEPTH_STENCIL;
- ppq->depth = indepth;
+ pipe_resource_reference(&ppq->depth, indepth);
if (!ppq->depth)
goto error;