diff --git a/src/mem.c b/src/mem.c index 004de01d94..c45059c5cd 100644 --- a/src/mem.c +++ b/src/mem.c @@ -304,6 +304,7 @@ void *rt_malloc(rt_size_t size) /* create mem2 struct */ mem2 = (struct heap_mem *)&heap_ptr[ptr2]; + mem2->magic = HEAP_MAGIC; mem2->used = 0; mem2->next = mem->next; mem2->prev = ptr; @@ -540,7 +541,7 @@ void rt_free(void *rmem) RT_ASSERT(mem->magic == HEAP_MAGIC); /* ... and is now unused. */ mem->used = 0; - mem->magic = 0; + mem->magic = HEAP_MAGIC; if (mem < lfree) {