r4711: - deprecate talloc_destroy()
authorAndrew Tridgell <tridge@samba.org>
Wed, 12 Jan 2005 11:45:43 +0000 (11:45 +0000)
committerGerald (Jerry) Carter <jerry@samba.org>
Wed, 10 Oct 2007 18:08:46 +0000 (13:08 -0500)
- expanded the talloc_realloc() test a little (I was concerned about a
  possible bug, which turned out to be an illusion)

- don't enable gcov by default in Makefile.talloc

source/lib/talloc/Makefile.talloc
source/lib/talloc/talloc.h
source/lib/talloc/testsuite.c

index 88cb0e7159dab1f81c1dbe36f6d87c92d2396599..a19b4ce31188a2b9f566c256dd911b18c248992a 100644 (file)
@@ -1,6 +1,6 @@
-OPT = -g -ftest-coverage -fprofile-arcs 
-LIBS = -lgcov
-#OPT = -g
+#OPT = -g -ftest-coverage -fprofile-arcs 
+#LIBS = -lgcov
+OPT = -O
 
 CFLAGS = $(OPT) -Wall
 
index 3483bb9e710bd572eb71a311015d4da1a9517742..607ca4ca47703403d450f289c30a6306b5ca636e 100644 (file)
@@ -4,7 +4,7 @@
    Unix SMB/CIFS implementation.
    Samba temporary memory allocation functions
 
-   Copyright (C) Andrew Tridgell 2004
+   Copyright (C) Andrew Tridgell 2004-2005
    
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
@@ -54,8 +54,6 @@ typedef void TALLOC_CTX;
 
 #define talloc_memdup(t, p, size) _talloc_memdup(t, p, size, __location__)
 
-#define talloc_destroy(ctx) talloc_free(ctx)
-
 #define malloc_p(type) (type *)malloc(sizeof(type))
 #define malloc_array_p(type, count) (type *)realloc_array(NULL, sizeof(type), count)
 #define realloc_p(p, type, count) (type *)realloc_array(p, sizeof(type), count)
@@ -70,6 +68,7 @@ typedef void TALLOC_CTX;
 #define talloc_p(ctx, type) talloc(ctx, type)
 #define talloc_array_p(ctx, type, count) talloc_array(ctx, type, count)
 #define talloc_realloc_p(ctx, p, type, count) talloc_realloc(ctx, p, type, count)
+#define talloc_destroy(ctx) talloc_free(ctx)
 #endif
 
 #ifndef PRINTF_ATTRIBUTE
index d93894b52015ec2e44b68b68a7e7d72f666857d6..bc1c18fdc135837228c31f9a32c608bd5d3c05d7 100644 (file)
@@ -575,7 +575,7 @@ static BOOL test_realloc_child(void)
                int count;
                struct el2 {
                        const char *name;
-               } **list;
+               } **list, **list2, **list3;
        } *el1;
        struct el2 *el2;
 
@@ -587,11 +587,22 @@ static BOOL test_realloc_child(void)
        el1->list = talloc(el1, struct el2 *);
        el1->list[0] = talloc(el1->list, struct el2);
        el1->list[0]->name = talloc_strdup(el1->list[0], "testing");
+
+       el1->list2 = talloc(el1, struct el2 *);
+       el1->list2[0] = talloc(el1->list2, struct el2);
+       el1->list2[0]->name = talloc_strdup(el1->list2[0], "testing2");
+
+       el1->list3 = talloc(el1, struct el2 *);
+       el1->list3[0] = talloc(el1->list3, struct el2);
+       el1->list3[0]->name = talloc_strdup(el1->list3[0], "testing2");
        
        el2 = talloc(el1->list, struct el2);
+       el2 = talloc(el1->list2, struct el2);
+       el2 = talloc(el1->list3, struct el2);
 
-       el1->list = talloc_realloc(el1, el1->list, struct el2 *, 2);
-       el1->list[1] = el2;
+       el1->list = talloc_realloc(el1, el1->list, struct el2 *, 100);
+       el1->list2 = talloc_realloc(el1, el1->list2, struct el2 *, 200);
+       el1->list3 = talloc_realloc(el1, el1->list3, struct el2 *, 300);
 
        talloc_free(root);