diff --git a/src/notify/queue.c b/src/notify/queue.c index ea43bed..c855ba2 100644 --- a/src/notify/queue.c +++ b/src/notify/queue.c @@ -61,16 +61,16 @@ static void dealloc_node(struct ref *tail) { tail->i = 0; } -queue_t* init_queue() { +queue_t init_queue() { - queue_t *q = malloc(sizeof(queue_t)); + queue_t q = malloc(sizeof(struct __queue)); init(q); return q; } -void queue_clear(queue_t *q) { +void queue_clear(queue_t q) { struct node *t, *n; @@ -88,13 +88,13 @@ void queue_clear(queue_t *q) { init(q); } -void queue_destroy(queue_t *q) { +void queue_destroy(queue_t q) { queue_clear(q); free(q); } -void queue_enqueue(queue_t *q, void *obj) { +void queue_enqueue(queue_t q, void *obj) { if (q->head.n == NULL) { q->tail.n = q->head.n = malloc(sizeof(struct node)); @@ -108,7 +108,7 @@ void queue_enqueue(queue_t *q, void *obj) { q->head.n->block[q->head.i] = obj; } -void* queue_dequeue(queue_t *q) { +void* queue_dequeue(queue_t q) { void *obj; @@ -127,15 +127,15 @@ void* queue_dequeue(queue_t *q) { return obj; } -int queue_isempty(queue_t *q) { +int queue_isempty(queue_t q) { if (q == NULL) return -1; - + return q->head.n == NULL && q->head.n == q->tail.n; } -size_t queue_num_items(queue_t *q) { +size_t queue_num_items(queue_t q) { if (queue_isempty(q)) return 0; diff --git a/src/notify/queue.h b/src/notify/queue.h index 2e4563c..de6f49d 100644 --- a/src/notify/queue.h +++ b/src/notify/queue.h @@ -16,20 +16,20 @@ #include -typedef struct __queue queue_t; +typedef struct __queue* queue_t; -queue_t* init_queue(void); +queue_t init_queue(void); -void queue_enqueue(queue_t *q, void *obj); +void queue_enqueue(queue_t q, void *obj); -void* queue_dequeue(queue_t *q); +void* queue_dequeue(queue_t q); -int queue_isempty(queue_t *q); +int queue_isempty(queue_t q); -size_t queue_num_items(queue_t *q); +size_t queue_num_items(queue_t q); -void queue_clear(queue_t *q); +void queue_clear(queue_t q); -void queue_destroy(queue_t *q); +void queue_destroy(queue_t q); #endif /* __NOTIFY_QUEUE_H */ diff --git a/test/t_queue.c b/test/t_queue.c index ac0d8f1..1111d97 100644 --- a/test/t_queue.c +++ b/test/t_queue.c @@ -6,7 +6,7 @@ int main() { int i, map[10] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}; - queue_t *q = init_queue(); + queue_t q = init_queue(); for(i=0; i < 10; i++) queue_enqueue(q, &map[i]);