summaryrefslogtreecommitdiff
path: root/src/code/listalloc.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/code/listalloc.c')
-rw-r--r--src/code/listalloc.c23
1 files changed, 9 insertions, 14 deletions
diff --git a/src/code/listalloc.c b/src/code/listalloc.c
index b6aefeee2..d4d24138c 100644
--- a/src/code/listalloc.c
+++ b/src/code/listalloc.c
@@ -7,17 +7,15 @@ ListAlloc* ListAlloc_Init(ListAlloc* this) {
}
void* ListAlloc_Alloc(ListAlloc* this, u32 size) {
- ListAlloc* ptr;
+ ListAlloc* ptr = SystemArena_MallocDebug(size + sizeof(ListAlloc), "../listalloc.c", 40);
ListAlloc* next;
- ptr = SystemArena_MallocDebug(size + sizeof(ListAlloc), "../listalloc.c", 40);
- if (!ptr) {
+ if (ptr == NULL) {
return NULL;
}
next = this->next;
-
- if (next) {
+ if (next != NULL) {
next->next = ptr;
}
@@ -25,7 +23,7 @@ void* ListAlloc_Alloc(ListAlloc* this, u32 size) {
ptr->next = NULL;
this->next = ptr;
- if (!this->prev) {
+ if (this->prev == NULL) {
this->prev = ptr;
}
@@ -33,15 +31,13 @@ void* ListAlloc_Alloc(ListAlloc* this, u32 size) {
}
void ListAlloc_Free(ListAlloc* this, void* data) {
- ListAlloc* ptr;
-
- ptr = &((ListAlloc*)data)[-1];
+ ListAlloc* ptr = &((ListAlloc*)data)[-1];
- if (ptr->prev) {
+ if (ptr->prev != NULL) {
ptr->prev->next = ptr->next;
}
- if (ptr->next) {
+ if (ptr->next != NULL) {
ptr->next->prev = ptr->prev;
}
@@ -57,10 +53,9 @@ void ListAlloc_Free(ListAlloc* this, void* data) {
}
void ListAlloc_FreeAll(ListAlloc* this) {
- ListAlloc* iter;
+ ListAlloc* iter = this->prev;
- iter = this->prev;
- while (iter) {
+ while (iter != NULL) {
ListAlloc_Free(this, (u8*)iter + sizeof(ListAlloc));
iter = this->prev;
}