in my application I use a heap memory with code of “heap_4”. I have the need to use the “realloc” function to provide a already allocated memory area. I have write a wrapper to this function on “heap_4” but I realized now that I do not know the size of the old allocation to copy the old content to the new memory area.
There is a function “malloc_usable_size” that returns this value but how implement this routine in “heap_4” ?
You can know the size of a memory block allocated by vPortMalloc ?
The size of every block is stored in a BlockLink_t structure, in the
allocated block itself. See the implementation of vPortFree() for an
example of how it is accessed.