diff options
author | Robert Bragg <robert@linux.intel.com> | 2011-06-28 12:43:01 +0100 |
---|---|---|
committer | Robert Bragg <robert@linux.intel.com> | 2011-06-28 12:49:31 +0100 |
commit | a7c8afe9af2600788b5ee7feae41fdb6aa333057 (patch) | |
tree | 9cef2be39d5671927ab6156bf99833306769c536 | |
parent | 66ab889bb20d843518997458b41299a5abc02db0 (diff) | |
download | cogl-a7c8afe9af2600788b5ee7feae41fdb6aa333057.tar.gz |
attribute: some some sentinal 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.
-rw-r--r-- | cogl/cogl-attribute.c | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/cogl/cogl-attribute.c b/cogl/cogl-attribute.c index 5327b026..d0bd85c7 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++) |