X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=lib%2Fcalloc.c;h=f4545c2b2ed52abe85eac2297140d7ab1c9ad4ef;hb=92249085071a973e2c0621b0415b93d2e48bb00d;hp=554a58da93d461e4b592e2914e35e11e2367bb53;hpb=c7e61475680fa226bd9b8bdd469cd66914e630f5;p=debian%2Fgzip diff --git a/lib/calloc.c b/lib/calloc.c index 554a58d..f4545c2 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-2018 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 @@ -13,15 +13,18 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License - along with this program. If not, see . */ + along with this program. If not, see . */ /* written by Jim Meyering and Bruno Haible */ #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