That looks wrong to me. We already account for the "other fields" in the vertex_size.
----- Original Message ----- > From: Bryan Cain <bryanca...@gmail.com> > > Before, it accounted for the size of the vertices but not the other fields > in the vertex_header struct, which caused memory corruption. > --- > src/gallium/auxiliary/draw/draw_gs.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/src/gallium/auxiliary/draw/draw_gs.c > b/src/gallium/auxiliary/draw/draw_gs.c > index cd63e2b..78727c6 100644 > --- a/src/gallium/auxiliary/draw/draw_gs.c > +++ b/src/gallium/auxiliary/draw/draw_gs.c > @@ -560,7 +560,8 @@ int draw_geometry_shader_run(struct draw_geometry_shader > *shader, > /* we allocate exactly one extra vertex per primitive to allow the GS to > emit > * overflown vertices into some area where they won't harm anyone */ > output_verts->verts = > - (struct vertex_header *)MALLOC(output_verts->vertex_size * > + (struct vertex_header *)MALLOC(sizeof(struct vertex_header) + > + output_verts->vertex_size * > max_out_prims * > shader->primitive_boundary); > > -- > 1.8.3.4 > > _______________________________________________ > mesa-dev mailing list > mesa-dev@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/mesa-dev > _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev