/*
- * malloc.c - dynamic memory allocation
+ * free.c - dynamic memory allocation
*
* written by Vangelis Rokas, 2004 (vrokas@otenet.gr)
*
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by the
+ * Free Software Foundation; either version 2, or (at your option) any
+ * later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ *
+ * In other words, you are welcome to use, share and improve this program.
+ * You are forbidden to forbid anyone else to use, share and improve
+ * what you give them. Help stamp out software-hoarding!
+ *
+ * $Id$
*/
-#include "malloc.h"
+#include <malloc.h>
-extern char _MALLOC_SPEC *_dynamicHeap; /* pointer to heap */
+extern char _MALLOC_SPEC *heap;
void free(unsigned char _MALLOC_SPEC *buf)
{
- /* mark block as deallocated */
- ((_malloc_rec *)(buf - 1))->bits.alloc = 0;
+ /* mark block as deallocated */
+ ((_malloc_rec *)((unsigned int)buf - 1))->bits.alloc = 0;
}