File: sidlMemory.c

package info (click to toggle)
babel 0.10.2-1
  • links: PTS
  • area: contrib
  • in suites: sarge
  • size: 43,932 kB
  • ctags: 29,707
  • sloc: java: 74,695; ansic: 73,142; cpp: 40,649; sh: 18,411; f90: 10,062; fortran: 6,727; python: 6,406; makefile: 3,866; xml: 118; perl: 48
file content (45 lines) | stat: -rw-r--r-- 748 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
/*
 * File:        sidlMemory.c
 * Copyright:   (c) 2004 The Regents of the University of California
 * Revision:    @(#) $Revision: 4434 $
 * Date:        $Date: 2005-03-17 09:05:29 -0800 (Thu, 17 Mar 2005) $
 * Description: Replacement memory allocation functions
 *
 */

#include "sidlMemory.h"

#if ! HAVE_MALLOC
#ifdef __cplusplus
extern "C"
#endif
void *malloc(size_t);

void *rpl_malloc(size_t n)
{
  return (n == 0) ? malloc(1) : malloc(n);
}
#endif

#if ! HAVE_REALLOC
#ifdef __cplusplus
extern "C"
#endif
void *realloc(void *, size_t);

void *rpl_realloc(void *ptr, size_t n)
{
  if (ptr) {
    if (n) return realloc(ptr, n);
    free(ptr);
    return NULL;
  }
  else {
    if (n) return malloc(n);
    return malloc(1);
  }
}

#endif