summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/vc4/vc4_context.c
diff options
context:
space:
mode:
authorEric Anholt <[email protected]>2014-12-30 16:10:28 -0800
committerEric Anholt <[email protected]>2014-12-31 11:34:28 -0800
commit37478c638a3607295437ce0a41dae03c200948f4 (patch)
tree9927460e7cad7df6a9246aa96cb47cdd050ba1f5 /src/gallium/drivers/vc4/vc4_context.c
parentbe0311c9626eef841f6d245359759cf1e082aebf (diff)
vc4: Fix memory leak as of 0404e7fe0ac2a6234a11290b4b1596e8bc127a4b.
Can't reset the CL before looking at how much we had pupt in it.
Diffstat (limited to 'src/gallium/drivers/vc4/vc4_context.c')
-rw-r--r--src/gallium/drivers/vc4/vc4_context.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/gallium/drivers/vc4/vc4_context.c b/src/gallium/drivers/vc4/vc4_context.c
index e4e433020fc..62f77b3da1b 100644
--- a/src/gallium/drivers/vc4/vc4_context.c
+++ b/src/gallium/drivers/vc4/vc4_context.c
@@ -296,16 +296,16 @@ vc4_setup_rcl(struct vc4_context *vc4)
static void
vc4_draw_reset(struct vc4_context *vc4)
{
- vc4_reset_cl(&vc4->bcl);
- vc4_reset_cl(&vc4->rcl);
- vc4_reset_cl(&vc4->shader_rec);
- vc4_reset_cl(&vc4->uniforms);
- vc4_reset_cl(&vc4->bo_handles);
struct vc4_bo **referenced_bos = vc4->bo_pointers.base;
for (int i = 0; i < (vc4->bo_handles.next -
vc4->bo_handles.base) / 4; i++) {
vc4_bo_unreference(&referenced_bos[i]);
}
+ vc4_reset_cl(&vc4->bcl);
+ vc4_reset_cl(&vc4->rcl);
+ vc4_reset_cl(&vc4->shader_rec);
+ vc4_reset_cl(&vc4->uniforms);
+ vc4_reset_cl(&vc4->bo_handles);
vc4_reset_cl(&vc4->bo_pointers);
vc4->shader_rec_count = 0;