From df2e0f59747d55ffd6fd47468d098aab1e9abfbe Mon Sep 17 00:00:00 2001 From: Tucker Evans Date: Wed, 27 May 2020 03:39:03 -0400 Subject: Fix double ended queue pop back w/ wrap around. --- collections/double_ended_queue.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'collections') diff --git a/collections/double_ended_queue.c b/collections/double_ended_queue.c index 25167e3..31ede5f 100644 --- a/collections/double_ended_queue.c +++ b/collections/double_ended_queue.c @@ -159,7 +159,10 @@ deq *root; return NULL; } - return tmp = *(--root->end); + tmp = *(root->end--); + root->end = (root->base + (root->end - root->base) % root->limit); + + return tmp; } void deq_free(root) -- cgit v1.1