Make talloctort call talloc_describe_all before exiting
[ira/wip.git] / source3 / lib / talloctort.c
index 61f9532f6e5d29f06883d565fce11be1e0c1a683..131a086bfbd69c7cba89e66917dcbdb5751e2e81 100644 (file)
@@ -35,22 +35,31 @@ int main(void)
        for (i = 0; i < NCTX; i++) {
                int j;
                for (j = 0; j < NOBJ; j++) {
-                       void *p;
-                       size_t size = 1<<(i+j);
+                       char *p;
+                       size_t size = 1<<(i/3+j);
 
                        p = talloc(ctx[i], size);
                        if (!p) {
                                fprintf(stderr,
-                                       "failed to talloc %0.f bytes\n", size);
+                                       "failed to talloc %.0f bytes\n",
+                                       (double) size);
                                exit(1);
                        }
+
+                       memset(p, 'A' + j, size);
                }
        }
 
        for (i = 0; i < NCTX; i++) {
-               printf("talloc@%p %-40s %db\n", ctx[i], ctx[i]->name,
-                      ctx[i]->total_alloc_size);
+               printf("talloc@%p %-40s %dkB\n", ctx[i],
+                      talloc_pool_name(ctx[i]),
+                      talloc_pool_size(ctx[i]) >> 10);
        }
 
+       printf("%s", talloc_describe_all(ctx[0]));
+
+       for (i = NCTX - 1; i >= 0; i--)
+               talloc_destroy(ctx[i]);
+
        return 0;
 }