diff options
author | Ingo Schwarze <schwarze@openbsd.org> | 2020-06-15 01:37:14 +0000 |
---|---|---|
committer | Ingo Schwarze <schwarze@openbsd.org> | 2020-06-15 01:37:14 +0000 |
commit | 5a2022bad6ea3a79a27a1ff0f18e1e9b02932d4d (patch) | |
tree | 6c7dac8234dbbac5b38113beaeab6783f4de4a2f /compat_recallocarray.c | |
parent | 66f5654476f96c127a607e83ee80b64405dcfc8c (diff) | |
download | mandoc-5a2022bad6ea3a79a27a1ff0f18e1e9b02932d4d.tar.gz |
Only compile compat_*.c implementations that are actually needed.
That's cleaner and it is supposed to fix compiler warnings with gcc 10
reported by Wynn Wolf Arbor <wolf at oriole dot systems> on discuss@.
Diffstat (limited to 'compat_recallocarray.c')
-rw-r--r-- | compat_recallocarray.c | 23 |
1 files changed, 7 insertions, 16 deletions
diff --git a/compat_recallocarray.c b/compat_recallocarray.c index c5fcea9f..9202934b 100644 --- a/compat_recallocarray.c +++ b/compat_recallocarray.c @@ -1,15 +1,7 @@ -#include "config.h" - -#if HAVE_RECALLOCARRAY - -int dummy; - -#else - /* $Id$ */ -/* $OpenBSD: malloc.c,v 1.225 2017/05/13 07:11:29 otto Exp $ */ +/* $OpenBSD: recallocarray.c,v 1.1 2017/03/06 18:44:21 otto Exp $ */ /* - * Copyright (c) 2017 Otto Moerbeek <otto@drijf.net> + * Copyright (c) 2008, 2017 Otto Moerbeek <otto@drijf.net> * * Permission to use, copy, modify, and distribute this software for any * purpose with or without fee is hereby granted, provided that the above @@ -23,18 +15,19 @@ int dummy; * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ +#include "config.h" #include <sys/types.h> #include <errno.h> -#include <stdint.h> #include <stdlib.h> +#include <stdint.h> #include <string.h> /* * This is sqrt(SIZE_MAX+1), as s1*s2 <= SIZE_MAX * if both s1 < MUL_NO_OVERFLOW and s2 < MUL_NO_OVERFLOW */ -#define MUL_NO_OVERFLOW ((size_t)1 << (sizeof(size_t) * 4)) +#define MUL_NO_OVERFLOW ((size_t)1 << (sizeof(size_t) * 4)) /* * Even though specified in POSIX, the PAGESIZE and PAGE_SIZE @@ -42,7 +35,7 @@ int dummy; * to avoid free() overhead for small shrinking, simply pick * an arbitrary number. */ -#define MALLOC_PAGESIZE (1UL << 12) +#define getpagesize() (1UL << 12) void * @@ -75,7 +68,7 @@ recallocarray(void *ptr, size_t oldnmemb, size_t newnmemb, size_t size) if (newsize <= oldsize) { size_t d = oldsize - newsize; - if (d < oldsize / 2 && d < MALLOC_PAGESIZE) { + if (d < oldsize / 2 && d < getpagesize()) { memset((char *)ptr + newsize, 0, d); return ptr; } @@ -104,5 +97,3 @@ recallocarray(void *ptr, size_t oldnmemb, size_t newnmemb, size_t size) return newptr; } - -#endif /* !HAVE_RECALLOCARRAY */ |