diff --git a/servers/slapd/sl_malloc.c b/servers/slapd/sl_malloc.c index 79317158174d4e5ccdccc9c6049ad9d514564376..d065c57ec9166a3cb99da6699810de0eb4136513 100644 --- a/servers/slapd/sl_malloc.c +++ b/servers/slapd/sl_malloc.c @@ -376,6 +376,10 @@ slap_sl_realloc(void *ptr, ber_len_t size, void *ctx) } if (sh->sh_stack) { + /* round up to doubleword boundary */ + size += pad + sizeof( ber_len_t ); + size &= ~pad; + /* Never shrink blocks */ if (size <= p[-1]) { new = p;