diff options
author | Volker Lendecke <vl@samba.org> | 2013-09-06 14:52:28 -0700 |
---|---|---|
committer | Volker Lendecke <vl@samba.org> | 2013-09-08 11:34:06 +0200 |
commit | 20ad6d7aa3dc5e7db4d886202f757ac1f68287d4 (patch) | |
tree | affcdc7a48bdad6fe0af82e0e41755f0e3df066b /lib/talloc/testsuite.c | |
parent | a3d9099d9a96b36df21ee0733adc5210438fe9dc (diff) | |
download | samba-20ad6d7aa3dc5e7db4d886202f757ac1f68287d4.tar.gz samba-20ad6d7aa3dc5e7db4d886202f757ac1f68287d4.tar.bz2 samba-20ad6d7aa3dc5e7db4d886202f757ac1f68287d4.zip |
talloc: Allow nested pools.
Signed-off-by: Volker Lendecke <vl@samba.org>
Signed-off-by: Jeremy Allison <jra@samba.org>
Diffstat (limited to 'lib/talloc/testsuite.c')
-rw-r--r-- | lib/talloc/testsuite.c | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/lib/talloc/testsuite.c b/lib/talloc/testsuite.c index 426c31a8f2..f04f4f1cc7 100644 --- a/lib/talloc/testsuite.c +++ b/lib/talloc/testsuite.c @@ -1267,6 +1267,30 @@ static bool test_pool_steal(void) return true; } +static bool test_pool_nest(void) +{ + void *p1, *p2, *p3; + void *e = talloc_new(NULL); + + p1 = talloc_pool(NULL, 1024); + torture_assert("talloc_pool", p1 != NULL, "failed"); + + p2 = talloc_pool(p1, 500); + torture_assert("talloc_pool", p2 != NULL, "failed"); + + p3 = talloc_size(p2, 10); + + talloc_steal(e, p3); + + talloc_free(p2); + + talloc_free(p3); + + talloc_free(p1); + + return true; +} + static bool test_free_ref_null_context(void) { void *p1, *p2, *p3; @@ -1567,6 +1591,8 @@ bool torture_local_talloc(struct torture_context *tctx) setlinebuf(stdout); test_reset(); + ret &= test_pool_nest(); + test_reset(); ret &= test_ref1(); test_reset(); ret &= test_ref2(); |