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;
 	}