Module: Mesa
Branch: master
Commit: db05972807c5cb7911b5745df00fa13130cf919e
URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=db05972807c5cb7911b5745df00fa13130cf919e

Author: Zack Rusin <[email protected]>
Date:   Sat Jun 12 10:44:31 2010 -0400

draw/gs: copy the outputs only if we emitted something

---

 src/gallium/auxiliary/draw/draw_gs.c |    8 +++++---
 1 files changed, 5 insertions(+), 3 deletions(-)

diff --git a/src/gallium/auxiliary/draw/draw_gs.c 
b/src/gallium/auxiliary/draw/draw_gs.c
index a1ca707..52f61d2 100644
--- a/src/gallium/auxiliary/draw/draw_gs.c
+++ b/src/gallium/auxiliary/draw/draw_gs.c
@@ -367,9 +367,11 @@ int draw_geometry_shader_run(struct draw_geometry_shader 
*shader,
 
    gs_run(shader, pipe_prim, count);
 
-   memcpy(output, pipeline_verts->data,
-          shader->info.num_outputs * 4 * sizeof(float) +
-          vertex_size * (shader->emitted_vertices -1));
+   if (shader->emitted_vertices > 0) {
+      memcpy(output, pipeline_verts->data,
+             shader->info.num_outputs * 4 * sizeof(float) +
+             vertex_size * (shader->emitted_vertices -1));
+   }
 
    FREE(pipeline_verts);
    return shader->emitted_vertices;

_______________________________________________
mesa-commit mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/mesa-commit

Reply via email to