diff options
Diffstat (limited to 'src/stack.c')
-rw-r--r-- | src/stack.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/stack.c b/src/stack.c index 6374d7e..8d5e00a 100644 --- a/src/stack.c +++ b/src/stack.c @@ -25,6 +25,7 @@ typedef struct StackHeadStruct StackHead; #define getHead(X) (((StackNode*)(pChar(X)-offsetof(StackNode, buf)))->head) #define getSize(X) (sizeof(StackNode) + (getHead(X)->size)) +/************** constructure / destructure ****************/ pvoid ctl_stack_initX(ppvoid q, uint size){ StackHead* head = (StackHead*)ctl_malloc(sizeof(StackHead)); head->size = size; @@ -53,14 +54,14 @@ uint ctl_stack_getEntrySizeX(ppcvoid q){ return getHead(*q)->size; } -pcvoid ctl_stack_getX(ppcvoid q){ +pvoid ctl_stack_getX(ppvoid q){ return *q; } int ctl_stack_isEmptyX(ppcvoid q){ return (getHead(*q)->top == NULL ? 1 : 0); } -int ctl_stack_addX(ppvoid q, pcvoid data){ +pvoid ctl_stack_addX(ppvoid q, pcvoid data){ StackHead* head = getHead(*q); StackNode* temp = (StackNode*)ctl_malloc(getSize(*q)); temp->head = head; @@ -68,7 +69,7 @@ int ctl_stack_addX(ppvoid q, pcvoid data){ memcpy(temp->buf, data, head->size); head->top = temp; *q = pVoid(head->top->buf); - return 1; + return *q; } int ctl_stack_delX(ppvoid q){ StackHead* head = getHead(*q); |