From: Howard Chu Date: Sat, 11 Apr 2009 03:40:12 +0000 (+0000) Subject: ITS#6054 assert/exit on failed allocs X-Git-Tag: ACLCHECK_0~641 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=b0e50c6a7d5b9a2d466018dcdf546e3289bffbc1;p=openldap ITS#6054 assert/exit on failed allocs --- diff --git a/servers/slapd/sl_malloc.c b/servers/slapd/sl_malloc.c index a5d8760b64..998d50bd8a 100644 --- a/servers/slapd/sl_malloc.c +++ b/servers/slapd/sl_malloc.c @@ -267,11 +267,19 @@ slap_sl_malloc( int i, j; #ifdef SLAP_NO_SL_MALLOC - return ber_memalloc_x( size, NULL ); + newptr = ber_memalloc_x( size, NULL ); + if ( newptr ) return newptr; + assert( 0 ); + exit( EXIT_FAILURE ); #endif /* ber_set_option calls us like this */ - if (!ctx) return ber_memalloc_x(size, NULL); + if (!ctx) { + newptr = ber_memalloc_x( size, NULL ); + if ( newptr ) return newptr; + assert( 0 ); + exit( EXIT_FAILURE ); + } /* round up to doubleword boundary */ size += sizeof(ber_len_t) + pad; @@ -375,7 +383,10 @@ slap_sl_realloc(void *ptr, ber_len_t size, void *ctx) return slap_sl_malloc(size, ctx); #ifdef SLAP_NO_SL_MALLOC - return ber_memrealloc_x( ptr, size, NULL ); + newptr = ber_memrealloc_x( ptr, size, NULL ); + if ( newptr ) return newptr; + assert( 0 ); + exit( EXIT_FAILURE ); #endif /* Not our memory? */