this file is only used for debugging
This commit is contained in:
parent
7165cec935
commit
b14b749d13
|
@ -1,687 +0,0 @@
|
|||
/*
|
||||
* (c) Copyright 1990, 1991, 1992 Conor P. Cahill (cpcahil@virtech.vti.com)
|
||||
*
|
||||
* This software may be distributed freely as long as the following conditions
|
||||
* are met:
|
||||
* * the distribution, or any derivative thereof, may not be
|
||||
* included as part of a commercial product
|
||||
* * full source code is provided including this copyright
|
||||
* * there is no charge for the software itself (there may be
|
||||
* a minimal charge for the copying or distribution effort)
|
||||
* * this copyright notice is not modified or removed from any
|
||||
* source file
|
||||
*/
|
||||
/*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#ifndef _DEBUG_MALLOC_INC
|
||||
#define _DEBUG_MALLOC_INC 1
|
||||
|
||||
/*
|
||||
* __need_size_t is checked by Gnu's stddef.h
|
||||
*/
|
||||
#define __need_size_t
|
||||
#include <stddef.h>
|
||||
#undef __need_size_t
|
||||
|
||||
#ifdef force_cproto_to_use_defines
|
||||
|
||||
/*
|
||||
* these are just here because cproto used the c-preprocessor to generate
|
||||
* the prototypes and if they were left as #defines the prototypes.h file
|
||||
* would have the contents of the define, not the define itself
|
||||
*/
|
||||
|
||||
typedef void DATATYPE;
|
||||
typedef size_t SIZETYPE;
|
||||
typedef void VOIDTYPE;
|
||||
typedef void MEMDATA;
|
||||
typedef size_t MEMSIZE;
|
||||
typedef int BCOPYSIZE;
|
||||
typedef size_t STRSIZE;
|
||||
typedef void FREETYPE;
|
||||
typedef void EXITTYPE;
|
||||
|
||||
#ifdef WRTSIZE
|
||||
#undef WRTSIZE
|
||||
#endif
|
||||
typedef unsigned int WRTSIZE;
|
||||
|
||||
/*
|
||||
* for now, define CONST as const. A sed script in the makefile will change
|
||||
* this back to CONST in the prototypes.h file.
|
||||
*/
|
||||
#define CONST const
|
||||
|
||||
#else /* force_cproto_to_use_defines */
|
||||
|
||||
/*
|
||||
* The following entries are automatically added by the Configure script.
|
||||
* If they are not correct for your system, then Configure is not handling
|
||||
* your system correctly. Please report this to the author along with
|
||||
* a description of your system and the correct values
|
||||
*/
|
||||
|
||||
#if (__GNUC__ == 2) && __STDC__
|
||||
|
||||
#define VOIDTYPE void
|
||||
#define CONST const
|
||||
#define EXITTYPE void
|
||||
#define DATATYPE void
|
||||
#define SIZETYPE size_t
|
||||
#define FREETYPE void
|
||||
#define MEMDATA void
|
||||
#define MEMSIZE size_t
|
||||
#define BCOPYSIZE int
|
||||
#define MEMCMPTYPE unsigned char
|
||||
#define STRSIZE size_t
|
||||
#define STRCMPTYPE unsigned char
|
||||
|
||||
#else /* (__GNUC__ == 2) && __STDC__ */
|
||||
|
||||
|
||||
#if (__GNUC__ == 2)
|
||||
|
||||
#define VOIDTYPE void
|
||||
#define CONST
|
||||
#define EXITTYPE void
|
||||
#define DATATYPE void
|
||||
#define SIZETYPE size_t
|
||||
#define FREETYPE void
|
||||
#define MEMDATA void
|
||||
#define MEMSIZE size_t
|
||||
#define BCOPYSIZE int
|
||||
#define MEMCMPTYPE unsigned char
|
||||
#define STRSIZE size_t
|
||||
#define STRCMPTYPE unsigned char
|
||||
|
||||
#else /* (__GNUC__ == 2) */
|
||||
|
||||
|
||||
#if (__GNUC__ == 2) && __STDC__ && __cplusplus
|
||||
|
||||
#define VOIDTYPE void
|
||||
#define CONST const
|
||||
#define EXITTYPE void
|
||||
#define DATATYPE void
|
||||
#define SIZETYPE size_t
|
||||
#define FREETYPE void
|
||||
#define MEMDATA void
|
||||
#define MEMSIZE size_t
|
||||
#define BCOPYSIZE int
|
||||
#define MEMCMPTYPE unsigned char
|
||||
#define STRSIZE size_t
|
||||
#define STRCMPTYPE unsigned char
|
||||
|
||||
#else /* (__GNUC__ == 2) && __STDC__ && __cplusplus */
|
||||
|
||||
|
||||
#if (__GNUC__ == 2) && __STDC__
|
||||
|
||||
#define VOIDTYPE void
|
||||
#define CONST const
|
||||
#define EXITTYPE void
|
||||
#define DATATYPE void
|
||||
#define SIZETYPE size_t
|
||||
#define FREETYPE void
|
||||
#define MEMDATA void
|
||||
#define MEMSIZE size_t
|
||||
#define BCOPYSIZE int
|
||||
#define MEMCMPTYPE unsigned char
|
||||
#define STRSIZE size_t
|
||||
#define STRCMPTYPE unsigned char
|
||||
|
||||
#endif /* (__GNUC__ == 2) && __STDC__ */
|
||||
|
||||
|
||||
#endif /* (__GNUC__ == 2) && __STDC__ && __cplusplus */
|
||||
|
||||
|
||||
#endif /* (__GNUC__ == 2) */
|
||||
|
||||
|
||||
#endif /* (__GNUC__ == 2) && __STDC__ */
|
||||
|
||||
/*
|
||||
* END of automatic configuration stuff.
|
||||
*/
|
||||
|
||||
/*
|
||||
* if DATATYPE is not defined, then the configure script must have had a
|
||||
* problem, or was used with a different compiler. So we have to stop
|
||||
* here and get the user to fix the problem.
|
||||
*/
|
||||
#ifndef DATATYPE
|
||||
/*
|
||||
* the following string should cause a comilation error and get the
|
||||
* user to look at this stuff to find out what is wrong.
|
||||
*/
|
||||
"This file is not configured correctly for this system. Run configure
|
||||
and check its results"
|
||||
char * malloc(); /* DON'T REMOVE THIS LINE if you get a compiler error
|
||||
here it is because the malloc.h file is not
|
||||
configured correctly See the readme/problems
|
||||
files for more info */
|
||||
|
||||
#endif /* DATATYPE */
|
||||
|
||||
#endif /* force_cproto_to_use_defines */
|
||||
|
||||
#define VOIDCAST (VOIDTYPE)
|
||||
|
||||
/*
|
||||
* since we redefine much of the stuff that is #defined in string.h and
|
||||
* memory.h, we should do what we can to make sure that they don't get
|
||||
* included after us. This is typically accomplished by a special symbol
|
||||
* (similar to _DEBUG_MALLOC_INC defined above) that is #defined when the
|
||||
* file is included. Since we don't want the file to be included we will
|
||||
* #define the symbol ourselves. These will typically have to change from
|
||||
* one system to another. I have put in several standard mechanisms used to
|
||||
* support this mechanism, so hopefully you won't have to modify this file.
|
||||
*/
|
||||
#ifndef _H_STRING
|
||||
#define _H_STRING 1
|
||||
#endif
|
||||
#ifndef __STRING_H
|
||||
#define __STRING_H 1
|
||||
#endif
|
||||
#ifndef _STRING_H_
|
||||
#define _STRING_H_ 1
|
||||
#endif
|
||||
#ifndef _STRING_H
|
||||
#define _STRING_H 1
|
||||
#endif
|
||||
#ifndef _STRING_INCLUDED
|
||||
#define _STRING_INCLUDED 1
|
||||
#endif
|
||||
#ifndef __string_h
|
||||
#define __string_h 1
|
||||
#endif
|
||||
#ifndef _string_h
|
||||
#define _string_h 1
|
||||
#endif
|
||||
#ifndef __string_h__
|
||||
#define __string_h__ 1
|
||||
#endif
|
||||
#ifndef _strings_h
|
||||
#define _strings_h 1
|
||||
#endif
|
||||
#ifndef __strings_h
|
||||
#define __strings_h 1
|
||||
#endif
|
||||
#ifndef __strings_h__
|
||||
#define __strings_h__ 1
|
||||
#endif
|
||||
#ifndef _H_MEMORY
|
||||
#define _H_MEMORY 1
|
||||
#endif
|
||||
#ifndef __MEMORY_H
|
||||
#define __MEMORY_H 1
|
||||
#endif
|
||||
#ifndef _MEMORY_H_
|
||||
#define _MEMORY_H_ 1
|
||||
#endif
|
||||
#ifndef _MEMORY_H
|
||||
#define _MEMORY_H 1
|
||||
#endif
|
||||
#ifndef _MEMORY_INCLUDED
|
||||
#define _MEMORY_INCLUDED 1
|
||||
#endif
|
||||
#ifndef __memory_h
|
||||
#define __memory_h 1
|
||||
#endif
|
||||
#ifndef _memory_h
|
||||
#define _memory_h 1
|
||||
#endif
|
||||
#ifndef __memory_h__
|
||||
#define __memory_h__ 1
|
||||
#endif
|
||||
#ifndef _STDLIB_H
|
||||
#define _STDLIB_H 1
|
||||
#endif
|
||||
|
||||
/*
|
||||
* for NCR, we need to disable their in-line expansion of the str* routines
|
||||
*/
|
||||
#define ISTRING 1
|
||||
|
||||
/*
|
||||
* Malloc warning/fatal error handler defines...
|
||||
*/
|
||||
#define M_HANDLE_DUMP 0x80 /* 128 */
|
||||
#define M_HANDLE_IGNORE 0
|
||||
#define M_HANDLE_ABORT 1
|
||||
#define M_HANDLE_EXIT 2
|
||||
#define M_HANDLE_CORE 3
|
||||
|
||||
/*
|
||||
* Mallopt commands and defaults
|
||||
*
|
||||
* the first four settings are ignored by the debugging dbmallopt, but are
|
||||
* here to maintain compatibility with the system malloc.h.
|
||||
*/
|
||||
#define M_MXFAST 1 /* ignored by mallopt */
|
||||
#define M_NLBLKS 2 /* ignored by mallopt */
|
||||
#define M_GRAIN 3 /* ignored by mallopt */
|
||||
#define M_KEEP 4 /* ignored by mallopt */
|
||||
#define MALLOC_WARN 100 /* set malloc warning handling */
|
||||
#define MALLOC_FATAL 101 /* set malloc fatal handling */
|
||||
#define MALLOC_ERRFILE 102 /* specify malloc error file */
|
||||
#define MALLOC_CKCHAIN 103 /* turn on chain checking */
|
||||
#define MALLOC_FILLAREA 104 /* turn off area filling */
|
||||
#define MALLOC_LOWFRAG 105 /* use best fit allocation mech */
|
||||
#define MALLOC_CKDATA 106 /* turn off/on data checking */
|
||||
#define MALLOC_REUSE 107 /* turn off/on freed seg reuse */
|
||||
#define MALLOC_SHOWLINKS 108 /* turn off/on adjacent link disp */
|
||||
#define MALLOC_DETAIL 109 /* turn off/on detail output */
|
||||
#define MALLOC_FREEMARK 110 /* warn about freeing marked segs*/
|
||||
#define MALLOC_ZERO 111 /* warn about zero len allocs */
|
||||
|
||||
union dbmalloptarg
|
||||
{
|
||||
int i;
|
||||
char * str;
|
||||
};
|
||||
|
||||
/*
|
||||
* disable the standard mallopt function
|
||||
*/
|
||||
#define mallopt(a,b) (0)
|
||||
|
||||
/*
|
||||
* Malloc warning/fatal error codes
|
||||
*/
|
||||
#define M_CODE_CHAIN_BROKE 1 /* malloc chain is broken */
|
||||
#define M_CODE_NO_END 2 /* chain end != endptr */
|
||||
#define M_CODE_BAD_PTR 3 /* pointer not in malloc area */
|
||||
#define M_CODE_BAD_MAGIC 4 /* bad magic number in header */
|
||||
#define M_CODE_BAD_CONNECT 5 /* chain poingers corrupt */
|
||||
#define M_CODE_OVERRUN 6 /* data overrun in malloc seg */
|
||||
#define M_CODE_REUSE 7 /* reuse of freed area */
|
||||
#define M_CODE_NOT_INUSE 8 /* pointer is not in use */
|
||||
#define M_CODE_NOMORE_MEM 9 /* no more memory available */
|
||||
#define M_CODE_OUTOF_BOUNDS 10 /* gone beyound bounds */
|
||||
#define M_CODE_FREELIST_BAD 11 /* inuse segment on freelist */
|
||||
#define M_CODE_NOBOUND 12 /* can't calculate boundry */
|
||||
#define M_CODE_STK_NOCUR 13 /* no current element on stack */
|
||||
#define M_CODE_STK_BADFUNC 14 /* current func doesn't match */
|
||||
#define M_CODE_UNDERRUN 15 /* data underrun in malloc seg */
|
||||
#define M_CODE_FREEMARK 16 /* free of marked segment */
|
||||
#define M_CODE_ZERO_ALLOC 17 /* zero length allocation */
|
||||
|
||||
#ifndef __STDCARGS
|
||||
#if __STDC__ || __cplusplus
|
||||
#define __STDCARGS(a) a
|
||||
#else
|
||||
#define __STDCARGS(a) ()
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#if __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
VOIDTYPE malloc_dump __STDCARGS((int));
|
||||
VOIDTYPE malloc_list __STDCARGS((int,unsigned long, unsigned long));
|
||||
int dbmallopt __STDCARGS((int, union dbmalloptarg *));
|
||||
DATATYPE * debug_calloc __STDCARGS((CONST char *,int,SIZETYPE,SIZETYPE));
|
||||
FREETYPE debug_cfree __STDCARGS((CONST char *, int, DATATYPE *));
|
||||
FREETYPE debug_free __STDCARGS((CONST char *, int, DATATYPE *));
|
||||
DATATYPE * debug_malloc __STDCARGS((CONST char *,int, SIZETYPE));
|
||||
DATATYPE * debug_realloc __STDCARGS((CONST char *,int,
|
||||
DATATYPE *,SIZETYPE));
|
||||
VOIDTYPE DBmalloc_mark __STDCARGS((CONST char *,int, DATATYPE *));
|
||||
unsigned long DBmalloc_inuse __STDCARGS((CONST char *,int,
|
||||
unsigned long *));
|
||||
int DBmalloc_chain_check __STDCARGS((CONST char *,int,int));
|
||||
SIZETYPE DBmalloc_size __STDCARGS((CONST char *,int,CONST DATATYPE *));
|
||||
DATATYPE * DBmemalign __STDCARGS((CONST char *, int,SIZETYPE, SIZETYPE));
|
||||
void StackEnter __STDCARGS((CONST char *, CONST char *, int));
|
||||
void StackLeave __STDCARGS((CONST char *, CONST char *, int));
|
||||
|
||||
/*
|
||||
* X allocation related prototypes
|
||||
*/
|
||||
char * debug_XtMalloc __STDCARGS((CONST char *, int, unsigned int));
|
||||
char * debug_XtRealloc __STDCARGS((CONST char *, int,
|
||||
char *, unsigned int));
|
||||
char * debug_XtCalloc __STDCARGS((CONST char *, int,
|
||||
unsigned int, unsigned int));
|
||||
void debug_XtFree __STDCARGS((CONST char *, int, char *));
|
||||
void * debug_XtBCopy __STDCARGS((CONST char *, int, char *,
|
||||
char *, int));
|
||||
extern void (*XtAllocErrorHandler) __STDCARGS((CONST char *));
|
||||
|
||||
/*
|
||||
* memory(3) related prototypes
|
||||
*/
|
||||
MEMDATA * DBmemccpy __STDCARGS((CONST char *file, int line,
|
||||
MEMDATA *ptr1, CONST MEMDATA *ptr2,
|
||||
int ch, MEMSIZE len));
|
||||
MEMDATA * DBmemchr __STDCARGS((CONST char *file, int line,
|
||||
CONST MEMDATA *ptr1, int ch,
|
||||
MEMSIZE len));
|
||||
MEMDATA * DBmemmove __STDCARGS((CONST char *file, int line,
|
||||
MEMDATA *ptr1, CONST MEMDATA *ptr2,
|
||||
MEMSIZE len));
|
||||
MEMDATA * DBmemcpy __STDCARGS((CONST char *file, int line,
|
||||
MEMDATA *ptr1, CONST MEMDATA *ptr2,
|
||||
MEMSIZE len));
|
||||
int DBmemcmp __STDCARGS((CONST char *file, int line,
|
||||
CONST MEMDATA *ptr1,
|
||||
CONST MEMDATA *ptr2, MEMSIZE len));
|
||||
MEMDATA * DBmemset __STDCARGS((CONST char *file, int line,
|
||||
MEMDATA *ptr1, int ch, MEMSIZE len));
|
||||
VOIDTYPE DBbcopy __STDCARGS((CONST char *file, int line,
|
||||
CONST MEMDATA *ptr2, MEMDATA *ptr1,
|
||||
BCOPYSIZE len));
|
||||
VOIDTYPE DBbzero __STDCARGS((CONST char *file, int line,
|
||||
MEMDATA *ptr1, BCOPYSIZE len));
|
||||
int DBbcmp __STDCARGS((CONST char *file, int line,
|
||||
CONST MEMDATA *ptr2,
|
||||
CONST MEMDATA *ptr1, BCOPYSIZE len));
|
||||
|
||||
/*
|
||||
* string(3) related prototypes
|
||||
*/
|
||||
char * DBstrcat __STDCARGS((CONST char *file,int line, char *str1,
|
||||
CONST char *str2));
|
||||
char * DBstrdup __STDCARGS((CONST char *file, int line,
|
||||
CONST char *str1));
|
||||
char * DBstrncat __STDCARGS((CONST char *file, int line, char *str1,
|
||||
CONST char *str2, STRSIZE len));
|
||||
int DBstrcmp __STDCARGS((CONST char *file, int line,
|
||||
CONST char *str1, CONST char *str2));
|
||||
int DBstrncmp __STDCARGS((CONST char *file, int line,
|
||||
CONST char *str1, CONST char *str2,
|
||||
STRSIZE len));
|
||||
int DBstricmp __STDCARGS((CONST char *file, int line,
|
||||
CONST char *str1, CONST char *str2));
|
||||
int DBstrincmp __STDCARGS((CONST char *file, int line,
|
||||
CONST char *str1, CONST char *str2,
|
||||
STRSIZE len));
|
||||
char * DBstrcpy __STDCARGS((CONST char *file, int line, char *str1,
|
||||
CONST char *str2));
|
||||
char * DBstrncpy __STDCARGS((CONST char *file, int line, char *str1,
|
||||
CONST char *str2, STRSIZE len));
|
||||
STRSIZE DBstrlen __STDCARGS((CONST char *file, int line,
|
||||
CONST char *str1));
|
||||
char * DBstrchr __STDCARGS((CONST char *file, int line,
|
||||
CONST char *str1, int c));
|
||||
char * DBstrrchr __STDCARGS((CONST char *file, int line,
|
||||
CONST char *str1, int c));
|
||||
char * DBindex __STDCARGS((CONST char *file, int line,
|
||||
CONST char *str1, int c));
|
||||
char * DBrindex __STDCARGS((CONST char *file, int line,
|
||||
CONST char *str1, int c));
|
||||
char * DBstrpbrk __STDCARGS((CONST char *file, int line,
|
||||
CONST char *str1, CONST char *str2));
|
||||
STRSIZE DBstrspn __STDCARGS((CONST char *file, int line,
|
||||
CONST char *str1, CONST char *str2));
|
||||
STRSIZE DBstrcspn __STDCARGS((CONST char *file, int line,
|
||||
CONST char *str1, CONST char *str2));
|
||||
char * DBstrstr __STDCARGS((CONST char *file, int line,
|
||||
CONST char *str1, CONST char *str2));
|
||||
char * DBstrtok __STDCARGS((CONST char *file, int line, char *str1,
|
||||
CONST char *str2));
|
||||
|
||||
#if __cplusplus
|
||||
};
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Macro which enables logging of the file and line number for each allocation
|
||||
* so that it is easier to determine where the offending malloc comes from.
|
||||
*
|
||||
* NOTE that only code re-compiled with this include file will have this
|
||||
* additional info. Calls from libraries that have not been recompiled will
|
||||
* just have a null string for this info.
|
||||
*/
|
||||
#ifndef IN_MALLOC_CODE
|
||||
|
||||
/*
|
||||
* allocation functions
|
||||
*/
|
||||
#ifdef malloc
|
||||
#undef malloc
|
||||
#endif
|
||||
#ifdef realloc
|
||||
#undef realloc
|
||||
#endif
|
||||
#ifdef calloc
|
||||
#undef calloc
|
||||
#endif
|
||||
#ifdef cfree
|
||||
#undef cfree
|
||||
#endif
|
||||
#ifdef free
|
||||
#undef free
|
||||
#endif
|
||||
#define malloc(len) debug_malloc( __FILE__,__LINE__, (len))
|
||||
#define realloc(ptr,len) debug_realloc(__FILE__,__LINE__, (ptr), (len))
|
||||
#define calloc(numelem,size) debug_calloc(__FILE__,__LINE__,(numelem),(size))
|
||||
#define cfree(ptr) debug_cfree(__FILE__,__LINE__,(ptr))
|
||||
#define free(ptr) debug_free(__FILE__,__LINE__,(ptr))
|
||||
#define malloc_chain_check(do) DBmalloc_chain_check(__FILE__,__LINE__,(do))
|
||||
#define malloc_mark(ptr) DBmalloc_mark(__FILE__,__LINE__,(ptr))
|
||||
#define malloc_inuse(histptr) DBmalloc_inuse(__FILE__,__LINE__,(histptr))
|
||||
#define malloc_size(ptr) DBmalloc_size(__FILE__,__LINE__,(ptr))
|
||||
#define memalign(align,size) DBmemalign(__FILE__,__LINE__,(align),(size))
|
||||
|
||||
/*
|
||||
* X allocation routines
|
||||
*/
|
||||
#define XtCalloc(_num,_size) debug_XtCalloc(__FILE__,__LINE__,_num,_size)
|
||||
#define XtMalloc(_size) debug_XtMalloc(__FILE__,__LINE__,_size)
|
||||
#define XtRealloc(_ptr,_size) debug_XtRealloc(__FILE__,__LINE__,_ptr,_size)
|
||||
#define XtFree(_ptr) debug_XtFree(__FILE__,__LINE__,_ptr)
|
||||
#define _XtBCopy(ptr1,ptr2,len) debug_XtBcopy(__FILE__,__LINE__,ptr1,ptr2,len)
|
||||
|
||||
/*
|
||||
* Other allocation functions
|
||||
*/
|
||||
#define _malloc(_size) debug_malloc(__FILE__,__LINE__,_size)
|
||||
#define _realloc(_ptr,_size) debug_realloc(__FILE__,__LINE__,_ptr,_size)
|
||||
#define _calloc(_num,_size) debug_calloc(__FILE__,__LINE__,_num,_size)
|
||||
#define _free(_ptr) debug_free(__FILE__,__LINE__,_ptr)
|
||||
|
||||
/*
|
||||
* memory(3) related functions
|
||||
*/
|
||||
#ifdef bcopy
|
||||
#undef bcopy
|
||||
#endif
|
||||
#ifdef bzero
|
||||
#undef bzero
|
||||
#endif
|
||||
#ifdef bcmp
|
||||
#undef bcmp
|
||||
#endif
|
||||
#define memccpy(ptr1,ptr2,ch,len) DBmemccpy(__FILE__,__LINE__,ptr1,ptr2,ch,len)
|
||||
#define memchr(ptr1,ch,len) DBmemchr(__FILE__,__LINE__,ptr1,ch,len)
|
||||
#define memmove(ptr1,ptr2,len) DBmemmove(__FILE__,__LINE__,ptr1, ptr2, len)
|
||||
#define memcpy(ptr1,ptr2,len) DBmemcpy(__FILE__, __LINE__, ptr1, ptr2, len)
|
||||
#define memcmp(ptr1,ptr2,len) DBmemcmp(__FILE__,__LINE__,ptr1, ptr2, len)
|
||||
#define memset(ptr1,ch,len) DBmemset(__FILE__,__LINE__,ptr1, ch, len)
|
||||
#define bcopy(ptr2,ptr1,len) DBbcopy(__FILE__,__LINE__,ptr2,ptr1,len)
|
||||
#define bzero(ptr1,len) DBbzero(__FILE__,__LINE__,ptr1,len)
|
||||
#define bcmp(ptr2,ptr1,len) DBbcmp(__FILE__, __LINE__, ptr2, ptr1, len)
|
||||
|
||||
#define _bcopy(ptr2,ptr1,len) DBbcopy(__FILE__,__LINE__,ptr2,ptr1,len)
|
||||
#define _bzero(ptr1,len) DBbzero(__FILE__,__LINE__,ptr1,len)
|
||||
#define _bcmp(ptr2,ptr1,len) DBbcmp(__FILE__,__LINE__,ptr2,ptr1,len)
|
||||
#define __dg_bcopy(ptr2,ptr1,len) DBbcopy(__FILE__,__LINE__,ptr2,ptr1,len)
|
||||
#define __dg_bzero(ptr1,len) DBbzero(__FILE__,__LINE__,ptr1,len)
|
||||
#define __dg_bcmp(ptr2,ptr1,len) DBbcmp(__FILE__,__LINE__,ptr2,ptr1,len)
|
||||
|
||||
/*
|
||||
* string(3) related functions
|
||||
*/
|
||||
#ifdef index
|
||||
#undef index
|
||||
#endif
|
||||
#ifdef rindex
|
||||
#undef rindex
|
||||
#endif
|
||||
#ifdef strchr
|
||||
#undef strchr
|
||||
#endif
|
||||
#ifdef strcmp
|
||||
#undef strcmp
|
||||
#endif
|
||||
#ifdef strcpy
|
||||
#undef strcpy
|
||||
#endif
|
||||
#ifdef strrchr
|
||||
#undef strrchr
|
||||
#endif
|
||||
#define index(str1,c) DBindex(__FILE__, __LINE__, str1, c)
|
||||
#define rindex(str1,c) DBrindex(__FILE__, __LINE__, str1, c)
|
||||
#define strcat(str1,str2) DBstrcat(__FILE__,__LINE__,str1,str2)
|
||||
#define strchr(str1,c) DBstrchr(__FILE__, __LINE__, str1,c)
|
||||
#define strcmp(str1,str2) DBstrcmp(__FILE__, __LINE__, str1, str2)
|
||||
#define strcpy(str1,str2) DBstrcpy(__FILE__, __LINE__, str1, str2)
|
||||
#define strcspn(str1,str2) DBstrcspn(__FILE__, __LINE__, str1,str2)
|
||||
#define strdup(str1) DBstrdup(__FILE__, __LINE__, str1)
|
||||
#define stricmp(str1,str2) DBstricmp(__FILE__, __LINE__, str1, str2)
|
||||
#define strincmp(str1,str2,len) DBstrincmp(__FILE__, __LINE__, str1,str2,len)
|
||||
#define strlen(str1) DBstrlen(__FILE__, __LINE__, str1)
|
||||
#define strncat(str1,str2,len) DBstrncat(__FILE__, __LINE__, str1,str2,len)
|
||||
#define strncpy(str1,str2,len) DBstrncpy(__FILE__,__LINE__,str1,str2,len)
|
||||
#define strncmp(str1,str2,len) DBstrncmp(__FILE__, __LINE__, str1,str2,len)
|
||||
#define strpbrk(str1,str2) DBstrpbrk(__FILE__, __LINE__, str1,str2)
|
||||
#define strrchr(str1,c) DBstrrchr(__FILE__,__LINE__,str1,c)
|
||||
#define strspn(str1,str2) DBstrspn(__FILE__, __LINE__, str1,str2)
|
||||
#define strstr(str1,str2) DBstrstr(__FILE__, __LINE__, str1, str2)
|
||||
#define strtok(str1,str2) DBstrtok(__FILE__, __LINE__, str1, str2)
|
||||
|
||||
/*
|
||||
* malloc stack related functions
|
||||
*/
|
||||
#define malloc_enter(func) StackEnter(func,__FILE__,__LINE__)
|
||||
#define malloc_leave(func) StackLeave(func,__FILE__,__LINE__)
|
||||
|
||||
#endif /* IN_MALLOC_CODE */
|
||||
|
||||
#endif /* _DEBUG_MALLOC_INC */
|
||||
|
||||
/*
|
||||
* $Log$
|
||||
* Revision 1.38 1992/08/22 16:27:13 cpcahil
|
||||
* final changes for pl14
|
||||
*
|
||||
* Revision 1.37 1992/08/18 11:42:00 cpcahil
|
||||
* added more #defs to preclude memory/string.h inclusion
|
||||
*
|
||||
* Revision 1.36 1992/07/12 15:30:58 cpcahil
|
||||
* Merged in Jonathan I Kamens' changes
|
||||
*
|
||||
* Revision 1.35 1992/07/03 00:03:25 cpcahil
|
||||
* more fixes for pl13, several suggestons from Rich Salz.
|
||||
*
|
||||
* Revision 1.34 1992/07/02 15:35:52 cpcahil
|
||||
* misc cleanups for PL13
|
||||
*
|
||||
* Revision 1.33 1992/07/02 13:49:54 cpcahil
|
||||
* added support for new malloc_size function and additional tests to testerr
|
||||
*
|
||||
* Revision 1.32 1992/06/30 13:06:39 cpcahil
|
||||
* added support for aligned allocations
|
||||
*
|
||||
* Revision 1.31 1992/06/22 23:40:10 cpcahil
|
||||
* many fixes for working on small int systems
|
||||
*
|
||||
* Revision 1.30 1992/05/06 04:53:29 cpcahil
|
||||
* performance enhancments
|
||||
*
|
||||
* Revision 1.29 1992/04/22 18:17:32 cpcahil
|
||||
* added support for Xt Alloc functions, linted code
|
||||
*
|
||||
* Revision 1.28 1992/04/13 19:08:18 cpcahil
|
||||
* fixed case insensitive stuff
|
||||
*
|
||||
* Revision 1.27 1992/04/13 18:41:18 cpcahil
|
||||
* added case insensitive string comparison routines
|
||||
*
|
||||
* Revision 1.26 1992/04/13 17:26:25 cpcahil
|
||||
* minor portability changes
|
||||
*
|
||||
* Revision 1.25 1992/04/13 14:13:18 cpcahil
|
||||
* cleanup of log message.
|
||||
*
|
||||
* Revision 1.24 1992/04/13 03:09:14 cpcahil
|
||||
* lots of changes.
|
||||
*
|
||||
* Revision 1.23 1992/03/01 12:42:38 cpcahil
|
||||
* added support for managing freed areas and fixed doublword bndr problems
|
||||
*
|
||||
* Revision 1.22 1992/02/07 15:51:07 cpcahil
|
||||
* mods for sun4
|
||||
*
|
||||
* Revision 1.21 1992/01/29 01:35:32 cpcahil
|
||||
* added sgi definition.
|
||||
*
|
||||
* Revision 1.20 1992/01/28 21:42:25 cpcahil
|
||||
* changes for the ibmRS6000
|
||||
*
|
||||
* Revision 1.19 1992/01/28 18:05:37 cpcahil
|
||||
* misc fixes for patch 7
|
||||
*
|
||||
* Revision 1.18 1992/01/22 16:21:35 cpcahil
|
||||
* added code to prevent inclusions of string.h and memory.h after malloc.h
|
||||
* was included.
|
||||
*
|
||||
* Revision 1.17 1992/01/10 17:26:46 cpcahil
|
||||
* fixed prototypes use of void.
|
||||
*
|
||||
* Revision 1.16 1992/01/10 16:53:39 cpcahil
|
||||
* added more info on sizetype and datatype. added support for overriding
|
||||
* use of void type.
|
||||
*
|
||||
* Revision 1.15 1992/01/09 17:19:11 cpcahil
|
||||
* put the close brace in the correct position.
|
||||
*
|
||||
* Revision 1.14 1992/01/09 17:12:36 cpcahil
|
||||
* added code to support inclusion in C++ modules
|
||||
*
|
||||
* Revision 1.13 1991/12/31 21:31:26 cpcahil
|
||||
* changes for patch 6. See CHANGES file for more info
|
||||
*
|
||||
* Revision 1.12 1991/12/26 22:31:29 cpcahil
|
||||
* added check to make sure file is not included twice.
|
||||
*
|
||||
* Revision 1.11 1991/12/06 17:58:46 cpcahil
|
||||
* added cfree() for compatibility with some wierd systems
|
||||
*
|
||||
* Revision 1.10 91/12/06 08:54:18 cpcahil
|
||||
* cleanup of __STDC__ usage and addition of CHANGES file
|
||||
*
|
||||
* Revision 1.9 91/12/04 09:23:40 cpcahil
|
||||
* several performance enhancements including addition of free list
|
||||
*
|
||||
* Revision 1.8 91/12/02 19:10:11 cpcahil
|
||||
* changes for patch release 5
|
||||
*
|
||||
* Revision 1.7 91/11/25 14:42:00 cpcahil
|
||||
* Final changes in preparation for patch 4 release
|
||||
*
|
||||
* Revision 1.6 91/11/24 00:49:28 cpcahil
|
||||
* first cut at patch 4
|
||||
*
|
||||
* Revision 1.5 91/11/20 11:54:10 cpcahil
|
||||
* interim checkin
|
||||
*
|
||||
* Revision 1.4 90/08/29 22:23:38 cpcahil
|
||||
* fixed mallopt to use a union as an argument.
|
||||
*
|
||||
* Revision 1.3 90/05/11 11:04:10 cpcahil
|
||||
* took out some extraneous lines
|
||||
*
|
||||
* Revision 1.2 90/05/11 00:13:09 cpcahil
|
||||
* added copyright statment
|
||||
*
|
||||
* Revision 1.1 90/02/23 07:09:03 cpcahil
|
||||
* Initial revision
|
||||
*
|
||||
*/
|
Loading…
Reference in New Issue