Merge pull request #3489 from greed-island/mem

fix bug in rt_realloc of mem.c,  which may cause memory leak
This commit is contained in:
Bernard Xiong 2020-03-30 20:45:39 +08:00 committed by GitHub
commit 0930683a3f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 6 additions and 0 deletions

View File

@ -490,6 +490,12 @@ void *rt_realloc(void *rmem, rt_size_t newsize)
((struct heap_mem *)&heap_ptr[mem2->next])->prev = ptr2;
}
if (mem2 < lfree)
{
/* the splited struct is now the lowest */
lfree = mem2;
}
plug_holes(mem2);
rt_sem_release(&heap_sem);