summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJake Koroman <jake@jakekoroman.com>2025-11-18 16:23:47 -0500
committerJake Koroman <jake@jakekoroman.com>2025-11-18 16:23:47 -0500
commitac64bbc1ef5cff475eeed2c1e7e277d36efa9ae8 (patch)
treee6285548ba0e105abf3cd0b7266454ba2d7f3f44
parente6b0c0db856ddfcd20e31677416e8f698fd8049b (diff)
fix arena_resize bug and fix jrk_array_foreach macro.
-rw-r--r--jrk.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/jrk.h b/jrk.h
index 9f51e48..3d586d3 100644
--- a/jrk.h
+++ b/jrk.h
@@ -255,7 +255,7 @@ typedef void *(*jrk_array_realloc_function_t) (void*, u64, u64, void*);
return true; \
}
-#define jrk_array_foreach(type, it, arr) for (type *it = (arr)->items; it < (arr)->items + (arr)->count; ++it)
+#define jrk_array_foreach(type, it, arr) for (type *it = (arr)->items; it < (arr)->items + (arr)->size; ++it)
jrk_array_prototype(char);
#define jrk_StringBuilder jrk_Array_char
@@ -536,7 +536,7 @@ jrk_arena_resize(jrk_Arena *arena, void *old, u64 old_size, u64 new_size)
if (old == &arena->data[arena->prev_offset]) {
result = old;
arena->prev_offset = arena->offset;
- arena->offset = new_size;
+ arena->offset += new_size;
memset(&arena->data[arena->prev_offset], 0, new_size - old_size);
} else {
result = &arena->data[arena->offset];