X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=lib%2Fcalloc.c;h=4ac06d2f6016253fec880cd69f50291f7b304ea7;hb=1d71dc7c690b5fe61e3e0c06303ffb59434bba4b;hp=554a58da93d461e4b592e2914e35e11e2367bb53;hpb=57fdfd3f8ec62b105c53bcdf6f127c35c7fe7391;p=gnulib.git diff --git a/lib/calloc.c b/lib/calloc.c index 554a58da9..4ac06d2f6 100644 --- a/lib/calloc.c +++ b/lib/calloc.c @@ -1,6 +1,6 @@ /* calloc() function that is glibc compatible. This wrapper function is required at least on Tru64 UNIX 5.1 and mingw. - Copyright (C) 2004, 2005, 2006, 2007 Free Software Foundation, Inc. + Copyright (C) 2004-2007, 2009-2011 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 @@ -20,8 +20,11 @@ #include /* Only the AC_FUNC_CALLOC macro defines 'calloc' already in config.h. */ #ifdef calloc -# define NEED_CALLOC_GNU +# define NEED_CALLOC_GNU 1 # undef calloc +/* Whereas the gnulib module 'calloc-gnu' defines HAVE_CALLOC_GNU. */ +#elif GNULIB_CALLOC_GNU && !HAVE_CALLOC_GNU +# define NEED_CALLOC_GNU 1 #endif /* Specification. */ @@ -40,7 +43,7 @@ rpl_calloc (size_t n, size_t s) { void *result; -#ifdef NEED_CALLOC_GNU +#if NEED_CALLOC_GNU if (n == 0 || s == 0) { n = 1; @@ -49,13 +52,13 @@ rpl_calloc (size_t n, size_t s) else { /* Defend against buggy calloc implementations that mishandle - size_t overflow. */ + size_t overflow. */ size_t bytes = n * s; if (bytes / s != n) - { - errno = ENOMEM; - return NULL; - } + { + errno = ENOMEM; + return NULL; + } } #endif