mirror of
https://github.com/isc-projects/bind9.git
synced 2026-03-25 11:55:13 -04:00
Add and use MALLOCX_ZERO_GET() macro to jemalloc_shim.h
Pull MALLOCX_ZERO_GET() macro to align the usage with the jemalloc jemalloc/internal/jemalloc_internal_types.h header.
This commit is contained in:
parent
c6828bcf8f
commit
d1427e9fa8
1 changed files with 9 additions and 3 deletions
|
|
@ -24,7 +24,13 @@
|
|||
|
||||
const char *malloc_conf = NULL;
|
||||
|
||||
#define MALLOCX_ZERO ((int)0x40)
|
||||
/*
|
||||
* The MALLOCX_ZERO and MALLOCX_ZERO_GET macros were taken literal from
|
||||
* jemalloc_macros.h and jemalloc_internal_types.h headers respectively.
|
||||
*/
|
||||
|
||||
#define MALLOCX_ZERO ((int)0x40)
|
||||
#define MALLOCX_ZERO_GET(flags) ((bool)(flags & MALLOCX_ZERO))
|
||||
|
||||
typedef union {
|
||||
size_t size;
|
||||
|
|
@ -42,7 +48,7 @@ mallocx(size_t size, int flags) {
|
|||
si->size = size;
|
||||
ptr = &si[1];
|
||||
|
||||
if ((flags & MALLOCX_ZERO) != 0) {
|
||||
if (MALLOCX_ZERO_GET(flags)) {
|
||||
memset(ptr, 0, size);
|
||||
}
|
||||
|
||||
|
|
@ -68,7 +74,7 @@ rallocx(void *ptr, size_t size, int flags) {
|
|||
size_info *si = realloc(&(((size_info *)ptr)[-1]), size + sizeof(*si));
|
||||
INSIST(si != NULL);
|
||||
|
||||
if ((flags & MALLOCX_ZERO) != 0 && size > si->size) {
|
||||
if (MALLOCX_ZERO_GET(flags) && size > si->size) {
|
||||
memset((uint8_t *)si + sizeof(*si) + si->size, 0,
|
||||
size - si->size);
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue