projects
/
cgds.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
fixed mistake in test/makemain.sh ; still vector_pop_first to fix in src/Vector.c
[cgds.git]
/
src
/
Queue.c
diff --git
a/src/Queue.c
b/src/Queue.c
index
7921f29
..
b85cf39
100644
(file)
--- a/
src/Queue.c
+++ b/
src/Queue.c
@@
-13,6
+13,7
@@
void _queue_init(Queue* queue, size_t dataSize)
Queue* _queue_new(size_t dataSize)
{
Queue* queue = (Queue*) safe_malloc(sizeof (Queue));
Queue* _queue_new(size_t dataSize)
{
Queue* queue = (Queue*) safe_malloc(sizeof (Queue));
+ queue->array = _vector_new(dataSize);
_queue_init(queue, dataSize);
return queue;
}
_queue_init(queue, dataSize);
return queue;
}
@@
-43,17
+44,13
@@
void _queue_push(Queue* queue, void* data)
void* _queue_peek(Queue* queue)
{
void* _queue_peek(Queue* queue)
{
- return vector_get(queue->array, 0);
+ return
_
vector_get(queue->array, 0);
}
void queue_pop(Queue* queue)
{
}
void queue_pop(Queue* queue)
{
- //remove first vector element and shift its internal array
- safe_free(queue->array->datas[0]);
- queue->array->datas++;
- //NOTE: we remove first element, so capacity decrease too
- queue->array->size--;
- queue->array->capacity--;
+ vector_pop_first(queue->array);
+
}
void queue_clear(Queue* queue)
}
void queue_clear(Queue* queue)
@@
-63,6
+60,6
@@
void queue_clear(Queue* queue)
void queue_destroy(Queue* queue)
{
void queue_destroy(Queue* queue)
{
-
queue_clear(queue
);
+
vector_destroy(queue->array
);
safe_free(queue);
}
safe_free(queue);
}