Imported Upstream version 1.4.16+git20130902
This commit is contained in:
parent
e76be63abf
commit
e70fb8c051
517 changed files with 44015 additions and 43295 deletions
24
gl/xmalloc.c
24
gl/xmalloc.c
|
@ -1,8 +1,6 @@
|
|||
/* xmalloc.c -- malloc with out of memory checking
|
||||
|
||||
Copyright (C) 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
|
||||
2000, 2002, 2003, 2004, 2005, 2006, 2008, 2009, 2010 Free Software
|
||||
Foundation, Inc.
|
||||
Copyright (C) 1990-2000, 2002-2006, 2008-2013 Free Software Foundation, Inc.
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
|
@ -19,19 +17,17 @@
|
|||
|
||||
#include <config.h>
|
||||
|
||||
#if ! HAVE_INLINE
|
||||
# define static_inline
|
||||
#endif
|
||||
#define XALLOC_INLINE _GL_EXTERN_INLINE
|
||||
|
||||
#include "xalloc.h"
|
||||
#undef static_inline
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
|
||||
/* 1 if calloc is known to be compatible with GNU calloc. This
|
||||
matters if we are not also using the calloc module, which defines
|
||||
HAVE_CALLOC and supports the GNU API even on non-GNU platforms. */
|
||||
#if defined HAVE_CALLOC || defined __GLIBC__
|
||||
HAVE_CALLOC_GNU and supports the GNU API even on non-GNU platforms. */
|
||||
#if defined HAVE_CALLOC_GNU || (defined __GLIBC__ && !defined __UCLIBC__)
|
||||
enum { HAVE_GNU_CALLOC = 1 };
|
||||
#else
|
||||
enum { HAVE_GNU_CALLOC = 0 };
|
||||
|
@ -54,8 +50,16 @@ xmalloc (size_t n)
|
|||
void *
|
||||
xrealloc (void *p, size_t n)
|
||||
{
|
||||
if (!n && p)
|
||||
{
|
||||
/* The GNU and C99 realloc behaviors disagree here. Act like
|
||||
GNU, even if the underlying realloc is C99. */
|
||||
free (p);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
p = realloc (p, n);
|
||||
if (!p && n != 0)
|
||||
if (!p && n)
|
||||
xalloc_die ();
|
||||
return p;
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue