--- parser3/src/include/pa_memory.h 2003/11/06 08:22:49 1.6 +++ parser3/src/include/pa_memory.h 2004/01/29 13:50:21 1.9 @@ -9,14 +9,16 @@ #ifndef PA_MEMORY_H #define PA_MEMORY_H -static const char* IDENT_MEMORY_H="$Date: 2003/11/06 08:22:49 $"; +static const char * const IDENT_MEMORY_H="$Date: 2004/01/29 13:50:21 $"; // include #include "pa_config_includes.h" /// to debug backtrace pointers switch this on: -//#define GC_DEBUG +#ifdef _DEBUG +#define GC_DEBUG +#endif #include "gc.h" // defines @@ -59,9 +61,8 @@ inline void *pa_malloc_atomic(size_t siz inline char *pa_strdup(const char* auto_variable_never_null, size_t helper_length=0) { size_t known_length=(helper_length?helper_length:strlen(auto_variable_never_null)); - size_t size=known_length+1; - if(char *result=static_cast(pa_gc_malloc_atomic(size))) { - memcpy(result, auto_variable_never_null, size); + if(char *result=static_cast(pa_gc_malloc_atomic(known_length+1))) { + memcpy(result, auto_variable_never_null, known_length); result[known_length]=0; return result; }