Mercurial > sos > sos
changeset 152:54ccc4f06e6b
Fixed a bug with freeing memory from the heap
So, I really need to re-evaluate how I am keeping track of the page sizes and
all that. It is starting to get confusing...
author | Jonathan Pevarnek <pevarnj@gmail.com> |
---|---|
date | Wed, 02 Nov 2011 21:34:56 -0400 |
parents | b18d52f11ade |
children | b523bc9c9a74 |
files | src/os/heap.c |
diffstat | 1 files changed, 1 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/src/os/heap.c Wed Nov 02 21:33:56 2011 -0400 +++ b/src/os/heap.c Wed Nov 02 21:34:56 2011 -0400 @@ -58,7 +58,7 @@ scan->next = toFree->next; toFree = scan; } - if(toFree + toFree->size == toFree->next) { + if(toFree + (toFree->size*PageSize)/sizeof(Header) == toFree->next) { toFree->size += toFree->next->size; toFree->next = toFree->next->next; }