Fix larena aligned alloc
This commit is contained in:
+2
-2
@@ -163,11 +163,11 @@ static inline void *larena_alloc_aligned(LArena *arena, size_t sz, unsigned int
|
||||
assert(align != 0);
|
||||
assert((align & (align - 1)) == 0); // power of 2
|
||||
|
||||
uintptr_t curr = (uintptr_t)arena->curr;
|
||||
uintptr_t curr = (uintptr_t)arena->;
|
||||
uintptr_t aligned = (curr + (align - (uintptr_t)1)) & ~(align - (uintptr_t)1);
|
||||
uint8_t *start = (uint8_t *)aligned;
|
||||
|
||||
if (sz > (larena_available(arena))) {
|
||||
if (sz > (size_t)(arena->end - start)) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user