finally fixed this memory bug

we were accidentally tracking frees of stuff that was never
allocated lol
This commit is contained in:
CPunch 2023-08-25 21:22:10 -05:00 committed by cpunch
parent 2f0f675159
commit 1a78a9ab5f
2 changed files with 1 additions and 1 deletions

View File

@ -10,6 +10,7 @@
// realloc wrapper // realloc wrapper
void *cosmoM_reallocate(CState *state, void *buf, size_t oldSize, size_t newSize) void *cosmoM_reallocate(CState *state, void *buf, size_t oldSize, size_t newSize)
{ {
if (buf == NULL) oldSize = 0;
#ifdef GC_DEBUG #ifdef GC_DEBUG
printf("old allocated bytes: %ld\n", state->allocatedBytes); printf("old allocated bytes: %ld\n", state->allocatedBytes);
if (buf) { if (buf) {

View File

@ -106,7 +106,6 @@ void cosmoV_freeState(CState *state)
// free our gray stack & finally free the state structure // free our gray stack & finally free the state structure
cosmoM_freearray(state, CObj *, state->grayStack.array, state->grayStack.capacity); cosmoM_freearray(state, CObj *, state->grayStack.array, state->grayStack.capacity);
// TODO: yeah idk, it looks like im missing 688 bytes somewhere? i'll look into it later
#ifdef GC_DEBUG #ifdef GC_DEBUG
if (state->allocatedBytes != 0) { if (state->allocatedBytes != 0) {
printf("state->allocatedBytes doesn't match, got %lu\n", state->allocatedBytes); printf("state->allocatedBytes doesn't match, got %lu\n", state->allocatedBytes);