summaryrefslogtreecommitdiff
path: root/src/mesa/pipe/draw/draw_vbuf.c
diff options
context:
space:
mode:
authorBen Skeggs <skeggsb@gmail.com>2007-12-10 12:06:59 +1100
committerBen Skeggs <skeggsb@gmail.com>2007-12-10 12:06:59 +1100
commit5c1a5b504705214fd5e90b33bb3034e75f6b5994 (patch)
treeac6e3bd4cb94979ad1fce57a3fd01249253ef3ae /src/mesa/pipe/draw/draw_vbuf.c
parent1a3987240a547ba6e625c864f10a033858de4c65 (diff)
parentf8f9580a2a1c89af1dc0e169b62440053d9d7e81 (diff)
Merge branch 'upstream-gallium-0.1' into darktama-gallium-0.1
Conflicts: src/mesa/drivers/dri/intel_winsys/intel_winsys_pipe.c src/mesa/pipe/Makefile src/mesa/pipe/draw/draw_vertex_fetch.c src/mesa/pipe/i915simple/i915_texture.c src/mesa/pipe/softpipe/sp_texture.c src/mesa/pipe/xlib/xm_winsys.c src/mesa/state_tracker/st_cb_fbo.c
Diffstat (limited to 'src/mesa/pipe/draw/draw_vbuf.c')
-rw-r--r--src/mesa/pipe/draw/draw_vbuf.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/src/mesa/pipe/draw/draw_vbuf.c b/src/mesa/pipe/draw/draw_vbuf.c
index d00cdec56c..d010aaba07 100644
--- a/src/mesa/pipe/draw/draw_vbuf.c
+++ b/src/mesa/pipe/draw/draw_vbuf.c
@@ -369,6 +369,15 @@ vbuf_reset_stipple_counter( struct draw_stage *stage )
}
+static void vbuf_destroy( struct draw_stage *stage )
+{
+ struct vbuf_stage *vbuf = vbuf_stage( stage );
+
+ FREE( vbuf->indices );
+ FREE( stage );
+}
+
+
/**
* Create a new primitive vbuf/render stage.
*/
@@ -384,12 +393,12 @@ struct draw_stage *draw_vbuf_stage( struct draw_context *draw,
vbuf->stage.tri = vbuf_first_tri;
vbuf->stage.end = vbuf_end;
vbuf->stage.reset_stipple_counter = vbuf_reset_stipple_counter;
+ vbuf->stage.destroy = vbuf_destroy;
vbuf->render = render;
assert(render->max_indices < UNDEFINED_VERTEX_ID);
vbuf->max_indices = render->max_indices;
- /* FIXME: free this memory on takedown */
vbuf->indices = MALLOC( vbuf->max_indices );
vbuf->vertices = NULL;