Ver código fonte

[Kernel] mark the free mem block with HEAP_MAGIC.

Bernard Xiong 10 anos atrás
pai
commit
730592df19
1 arquivos alterados com 2 adições e 1 exclusões
  1. 2 1
      src/mem.c

+ 2 - 1
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)
     {