made create_element really work for any position
This commit is contained in:
parent
1cc70f1dc7
commit
52d7c8cf06
1 changed files with 9 additions and 5 deletions
14
src/list.c
14
src/list.c
|
@ -22,13 +22,17 @@ void *create_element(void **dest, int size) {
|
|||
List *e = malloc(size);
|
||||
List **d = (List **)dest;
|
||||
|
||||
e->prev = NULL;
|
||||
e->next = *d;
|
||||
e->next = NULL;
|
||||
e->prev = *d;
|
||||
if(*d != NULL) {
|
||||
e->prev = (*d)->prev;
|
||||
(*d)->prev = e;
|
||||
e->next = (*d)->next;
|
||||
if((*d)->next)
|
||||
((List *)(*d)->next)->prev = e;
|
||||
|
||||
(*d)->next = e;
|
||||
} else {
|
||||
*d = e;
|
||||
}
|
||||
*d = e;
|
||||
|
||||
return e;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue