License, documentation, and memory fixes
[yaz-moved-to-github.git] / include / dmalloc.h
1 /*
2  * Copyright (c) 1995, Index Data.
3  *
4  * Permission to use, copy, modify, distribute, and sell this software and
5  * its documentation, in whole or in part, for any purpose, is hereby granted,
6  * provided that:
7  *
8  * 1. This copyright and permission notice appear in all copies of the
9  * software and its documentation. Notices of copyright or attribution
10  * which appear at the beginning of any file must remain unchanged.
11  *
12  * 2. The name of Index Data or the individual authors may not be used to
13  * endorse or promote products derived from this software without specific
14  * prior written permission.
15  *
16  * THIS SOFTWARE IS PROVIDED "AS IS" AND WITHOUT WARRANTY OF ANY KIND,
17  * EXPRESS, IMPLIED, OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
18  * WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
19  * IN NO EVENT SHALL INDEX DATA BE LIABLE FOR ANY SPECIAL, INCIDENTAL,
20  * INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY DAMAGES
21  * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER OR
22  * NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
23  * LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
24  * OF THIS SOFTWARE.
25  *
26  * $Log: dmalloc.h,v $
27  * Revision 1.2  1995-05-16 08:50:30  quinn
28  * License, documentation, and memory fixes
29  *
30  * Revision 1.1  1995/03/30  09:39:40  quinn
31  * Moved .h files to include directory
32  *
33  * Revision 1.1  1995/03/27  08:35:18  quinn
34  * Created util library
35  * Added memory debugging module. Imported options-manager
36  *
37  *
38  */
39
40 #ifndef DMALLOC_H
41 #define DMALLOC_H
42
43 #ifdef DEBUG_MALLOC
44
45 #ifdef malloc
46 #undef malloc
47 #endif
48 #ifdef free
49 #undef free
50 #endif
51 #ifdef realloc
52 #undef realloc
53 #endif
54 #define malloc(n) d_malloc(__FILE__, __LINE__, (n))
55 #define free(p) d_free(__FILE__, __LINE__, (p))
56 #define realloc(p, n) d_realloc(__FILE__, __LINE__, (p), (n))
57
58 void *d_malloc(char *file, int line, int nbytes);
59 void d_free(char *file, int line, char *ptr);
60 void *d_realloc(char *file, int line, char *ptr, int nbytes);
61
62 #endif
63
64 #endif