]> git.sur5r.net Git - openldap/commitdiff
ITS#6054 assert/exit on failed allocs
authorHoward Chu <hyc@openldap.org>
Sat, 11 Apr 2009 03:40:12 +0000 (03:40 +0000)
committerHoward Chu <hyc@openldap.org>
Sat, 11 Apr 2009 03:40:12 +0000 (03:40 +0000)
servers/slapd/sl_malloc.c

index a5d8760b64d77f7eda5dd3735fc37be0bc7d736d..998d50bd8a9378a6af8b35eaf6db38bb5bc4282f 100644 (file)
@@ -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? */