From f0a28f4287d509be8e9a320ad4c29ec2319490da Mon Sep 17 00:00:00 2001 From: Robert Bragg Date: Tue, 28 Jun 2011 12:43:01 +0100 Subject: [PATCH] attribute: cleanup some sentinel array left over logic It used to be that we passed around NULL terminated arrays of attributes, but since 3c1e83c7f we now explicitly pass an n_attributes count instead. There were some leftovers of the old approach in the cogl_vdraw_[indexed]_attributes functions and also there was an off-by-one error with the n_attributes values passed on which was causing crashes. Signed-off-by: Neil Roberts --- cogl/cogl-attribute.c | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/cogl/cogl-attribute.c b/cogl/cogl-attribute.c index 5327b026d..d0bd85c79 100644 --- a/cogl/cogl-attribute.c +++ b/cogl/cogl-attribute.c @@ -1156,8 +1156,7 @@ cogl_vdraw_attributes (CoglVerticesMode mode, ; va_end (ap); - attributes = g_alloca (sizeof (CoglAttribute *) * (n_attributes + 1)); - attributes[n_attributes] = NULL; + attributes = g_alloca (sizeof (CoglAttribute *) * n_attributes); va_start (ap, n_vertices); for (i = 0; (attribute = va_arg (ap, CoglAttribute *)); i++) @@ -1165,7 +1164,7 @@ cogl_vdraw_attributes (CoglVerticesMode mode, va_end (ap); cogl_draw_attributes (mode, first_vertex, n_vertices, - attributes, i + 1); + attributes, n_attributes); } static size_t @@ -1274,8 +1273,7 @@ cogl_vdraw_indexed_attributes (CoglVerticesMode mode, ; va_end (ap); - attributes = g_alloca (sizeof (CoglAttribute *) * (n_attributes + 1)); - attributes[n_attributes] = NULL; + attributes = g_alloca (sizeof (CoglAttribute *) * n_attributes); va_start (ap, indices); for (i = 0; (attribute = va_arg (ap, CoglAttribute *)); i++)