From 55a49e418f940d1aa98e31b0dceb5e382f6d3b97 Mon Sep 17 00:00:00 2001 From: Jordan Bancino Date: Wed, 24 Aug 2022 14:41:42 -0400 Subject: [PATCH] Fix logic error relating to the initial call to QueuePush() --- src/Queue.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/Queue.c b/src/Queue.c index 5500b3a..f8b94f8 100644 --- a/src/Queue.c +++ b/src/Queue.c @@ -115,7 +115,15 @@ QueuePush(Queue * q, void *element) q->front = 0; } - q->rear = (q->rear + 1) % q->size; + if (q->rear == q->size + 1) + { + q->rear = 0; + } + else + { + q->rear = (q->rear + 1) % q->size; + } + q->items[q->rear] = element; return 1;