From 05abd25ddc6dd0a9a41c9be8a3dee93f07a4c911 Mon Sep 17 00:00:00 2001 From: mifi Date: Fri, 14 Dec 2007 19:08:03 +0000 Subject: git-svn-id: svn://svn.berlios.de/openocd/trunk@228 b42882b7-edfa-0310-969c-e2dbd0fdcd60 --- src/helper/replacements.c | 36 +++++++++++++++++++++++++++++++++++- 1 file changed, 35 insertions(+), 1 deletion(-) (limited to 'src/helper/replacements.c') diff --git a/src/helper/replacements.c b/src/helper/replacements.c index 769296a0..5804b197 100644 --- a/src/helper/replacements.c +++ b/src/helper/replacements.c @@ -19,7 +19,41 @@ ***************************************************************************/ #ifdef HAVE_CONFIG_H #include "config.h" -#endif +#endif + +/* DANGER!!!! These must be defined *BEFORE* replacements.h and the malloc() macro!!!! */ + +#include +#include +/* + * clear_malloc + * + * will alloc memory and clear it + */ +void *clear_malloc(size_t size) +{ + void *t = malloc(size); + if (t!=NULL) + { + memset(t, 0x00, size); + } + return t; +} + +void *fill_malloc(size_t size) +{ + void *t = malloc(size); + if (t!=NULL) + { + /* We want to initialize memory to some known bad state. */ + /* 0 and 0xff yields 0 and -1 as integers, which often */ + /* have meaningful values. 0x5555... is not often a valid */ + /* integer and is quite easily spotted in the debugger */ + /* also it is almost certainly an invalid address */ + memset(t, 0x55, size); + } + return t; +} #include "replacements.h" -- cgit v1.2.3