Mesa (master): draw: Work around an invalid write.

Chia-I Wu olv at kemper.freedesktop.org
Fri Jun 25 08:19:09 PDT 2010


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

Author: Chia-I Wu <olv at lunarg.com>
Date:   Fri Jun 25 18:32:41 2010 +0800

draw: Work around an invalid write.

SSE vertex shader does not seem to honor the execution mask.  Pad the
output array as a workaround.

---

 .../auxiliary/draw/draw_pt_fetch_shade_pipeline.c  |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c b/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
index 24c538b..121dfc4 100644
--- a/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
+++ b/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
@@ -184,7 +184,7 @@ static void draw_vertex_shader_run(struct draw_vertex_shader *vshader,
    output_verts->count = input_verts->count;
    output_verts->verts =
       (struct vertex_header *)MALLOC(output_verts->vertex_size *
-                                     output_verts->count);
+                                     align(output_verts->count, 4));
 
    vshader->run_linear(vshader,
                        (const float (*)[4])input_verts->verts->data,



More information about the mesa-commit mailing list