- mdp->heapinfo[block + blocks].busy.type = 0;
- mdp->heapinfo[block + blocks].busy.info.size
- = mdp->heapinfo[block].busy.info.size - blocks;
- mdp->heapinfo[block].busy.info.size = blocks;
- mfree(md, ADDRESS(block + blocks));
+ for (it= block+blocks; it< mdp->heapinfo[block].busy_block.size ; it++){
+ mdp->heapinfo[it].type = 0; // FIXME that should be useless, type should already be 0 here
+ mdp->heapinfo[it].busy_block.ignore = 0;
+ }
+
+ mdp->heapinfo[block + blocks].busy_block.size
+ = mdp->heapinfo[block].busy_block.size - blocks;
+ mfree(mdp, ADDRESS(block + blocks));
+
+ mdp->heapinfo[block].busy_block.size = blocks;
+ mdp->heapinfo[block].busy_block.busy_size = requested_size;
+ mdp->heapinfo[block].busy_block.ignore = 0;
+