From ddb39a9ab662aa72fb2a5dd20aab6bc5225b5152 Mon Sep 17 00:00:00 2001 From: Bert Belder Date: Sun, 10 Sep 2017 19:59:23 +0200 Subject: [PATCH] queue: add QUEUE_ENQUEUED() to determine if an element is in a queue --- src/queue.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/queue.h b/src/queue.h index 37a9ad9..341c45f 100644 --- a/src/queue.h +++ b/src/queue.h @@ -37,6 +37,7 @@ typedef void* QUEUE[2]; for ((q) = _QUEUE_NEXT(h); (q) != (h); (q) = _QUEUE_NEXT(q)) #define QUEUE_EMPTY(q) ((const QUEUE*) (q) == (const QUEUE*) _QUEUE_NEXT(q)) +#define QUEUE_ENQUEUED(q) (!QUEUE_EMPTY(q)) #define QUEUE_HEAD(q) (_QUEUE_NEXT(q)) @@ -94,6 +95,7 @@ typedef void* QUEUE[2]; do { \ _QUEUE_PREV_NEXT(q) = _QUEUE_NEXT(q); \ _QUEUE_NEXT_PREV(q) = _QUEUE_PREV(q); \ + QUEUE_INIT(q); \ } while (0) #endif /* QUEUE_H_ */