diff options
author | Jörg Frings-Fürst <debian@jff-webhosting.net> | 2017-12-02 12:05:34 +0100 |
---|---|---|
committer | Jörg Frings-Fürst <debian@jff-webhosting.net> | 2017-12-02 12:05:34 +0100 |
commit | 7c78c92a28ef43d68b172adf97fbd8a27be3baec (patch) | |
tree | 3a98b0d01865f5e00912521c58386eb008a70d07 /lib/malloca.h | |
parent | 4d76768442551c97a85e6f133cb818d223012746 (diff) | |
parent | 3ee36dc9787cee6ab5314af8f9c01b05a50e7d9d (diff) |
Merge branch 'feature/upstream' into develop
Diffstat (limited to 'lib/malloca.h')
-rw-r--r-- | lib/malloca.h | 17 |
1 files changed, 6 insertions, 11 deletions
diff --git a/lib/malloca.h b/lib/malloca.h index 55eddea..a33907a 100644 --- a/lib/malloca.h +++ b/lib/malloca.h @@ -1,5 +1,5 @@ /* Safe automatic memory allocation. - Copyright (C) 2003-2007, 2009-2016 Free Software Foundation, Inc. + Copyright (C) 2003-2007, 2009-2017 Free Software Foundation, Inc. Written by Bruno Haible <bruno@clisp.org>, 2003. This program is free software: you can redistribute it and/or @@ -22,7 +22,7 @@ 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 <http://www.gnu.org/licenses/>. */ + along with this program; if not, see <https://www.gnu.org/licenses/>. */ #ifndef _MALLOCA_H #define _MALLOCA_H @@ -30,6 +30,9 @@ #include <alloca.h> #include <stddef.h> #include <stdlib.h> +#include <stdint.h> + +#include "xalloc-oversized.h" #ifdef __cplusplus @@ -82,15 +85,7 @@ extern void freea (void *p); It allocates an array of N objects, each with S bytes of memory, on the stack. S must be positive and N must be nonnegative. The array must be freed using freea() before the function returns. */ -#if 1 -/* Cf. the definition of xalloc_oversized. */ -# define nmalloca(n, s) \ - ((n) > (size_t) (sizeof (ptrdiff_t) <= sizeof (size_t) ? -1 : -2) / (s) \ - ? NULL \ - : malloca ((n) * (s))) -#else -extern void * nmalloca (size_t n, size_t s); -#endif +#define nmalloca(n, s) (xalloc_oversized (n, s) ? NULL : malloca ((n) * (s))) #ifdef __cplusplus |