From 5f81eac5e113937fcf9309b18fd322e4f0d76130 Mon Sep 17 00:00:00 2001 From: Wim Taymans Date: Wed, 16 Feb 2011 17:14:11 +0100 Subject: [PATCH] atomicqueue: use correct array sizes --- gst/gstatomicqueue.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gst/gstatomicqueue.c b/gst/gstatomicqueue.c index e6c9e58..f1cb475 100644 --- a/gst/gstatomicqueue.c +++ b/gst/gstatomicqueue.c @@ -80,7 +80,7 @@ new_queue_mem (guint size, gint pos) /* we keep the size as a mask for performance */ mem->size = clp2 (MAX (size, 16)) - 1; - mem->array = g_new0 (gpointer, mem->size); + mem->array = g_new0 (gpointer, mem->size + 1); mem->head = pos; mem->tail = pos; mem->next = NULL; @@ -345,7 +345,7 @@ gst_atomic_queue_push (GstAtomicQueue * queue, gpointer data) size = tail_mem->size; /* we're not full, continue */ - if (tail - head < size) + if (tail - head <= size) break; /* else we need to grow the array, we store a mask so we have to add 1 */ -- 2.7.4