Annotation of embedaddon/libiconv/srclib/malloc.c, revision 1.1.1.1

1.1       misho       1: /* malloc() function that is glibc compatible.
                      2: 
                      3:    Copyright (C) 1997, 1998, 2006, 2007 Free Software Foundation, Inc.
                      4: 
                      5:    This program is free software; you can redistribute it and/or modify
                      6:    it under the terms of the GNU General Public License as published by
                      7:    the Free Software Foundation; either version 3, or (at your option)
                      8:    any later version.
                      9: 
                     10:    This program is distributed in the hope that it will be useful,
                     11:    but WITHOUT ANY WARRANTY; without even the implied warranty of
                     12:    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
                     13:    GNU General Public License for more details.
                     14: 
                     15:    You should have received a copy of the GNU General Public License
                     16:    along with this program; if not, write to the Free Software Foundation,
                     17:    Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.  */
                     18: 
                     19: /* written by Jim Meyering and Bruno Haible */
                     20: 
                     21: #include <config.h>
                     22: /* Only the AC_FUNC_MALLOC macro defines 'malloc' already in config.h.  */
                     23: #ifdef malloc
                     24: # define NEED_MALLOC_GNU
                     25: # undef malloc
                     26: #endif
                     27: 
                     28: /* Specification.  */
                     29: #include <stdlib.h>
                     30: 
                     31: #include <errno.h>
                     32: 
                     33: /* Call the system's malloc below.  */
                     34: #undef malloc
                     35: 
                     36: /* Allocate an N-byte block of memory from the heap.
                     37:    If N is zero, allocate a 1-byte block.  */
                     38: 
                     39: void *
                     40: rpl_malloc (size_t n)
                     41: {
                     42:   void *result;
                     43: 
                     44: #ifdef NEED_MALLOC_GNU
                     45:   if (n == 0)
                     46:     n = 1;
                     47: #endif
                     48: 
                     49:   result = malloc (n);
                     50: 
                     51: #if !HAVE_MALLOC_POSIX
                     52:   if (result == NULL)
                     53:     errno = ENOMEM;
                     54: #endif
                     55: 
                     56:   return result;
                     57: }

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>