summaryrefslogtreecommitdiff
path: root/source4/include/talloc.h
diff options
context:
space:
mode:
authorAndrew Tridgell <tridge@samba.org>2004-09-27 04:20:18 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 12:59:20 -0500
commit351ca44e8b3ea8336abba8215dfc1ccb42458384 (patch)
tree2a844c622eef52c401a88c53afa05c38e3543436 /source4/include/talloc.h
parent0be5523afbd9fcc2c08afab708fa6df19035f16e (diff)
downloadsamba-351ca44e8b3ea8336abba8215dfc1ccb42458384.tar.gz
samba-351ca44e8b3ea8336abba8215dfc1ccb42458384.tar.bz2
samba-351ca44e8b3ea8336abba8215dfc1ccb42458384.zip
r2674: I have realised that talloc() should have its context marked const, as
a const pointer really means that "the data pointed to by this pointer won't change", and that is certainly true of talloc(). The fact that some behind-the-scenes meta-data can change doesn't matter from the point of view of const. this fixes a number of const warnings caused by const data structures being passed as talloc contexts. That will no longer generate a warning. also changed the talloc leak reporting option from --leak-check to --leak-report, as all it does is generate a report on exit. A new --leak-report-full option has been added that shows the complete tree of memory allocations, which is is quite useful in tracking things down. NOTE: I find it quite useful to insert talloc_report_full(ptr, stderr) calls at strategic points in the code while debugging memory allocation problems, particularly before freeing a major context (such as the connection context). This allows you to see if that context has been accumulating too much data, such as per-request data, which should have been freed when the request finished. (This used to be commit c60ff99c3129c26a9204bac1c6e5fb386114a923)
Diffstat (limited to 'source4/include/talloc.h')
-rw-r--r--source4/include/talloc.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/source4/include/talloc.h b/source4/include/talloc.h
index 635f77d043..4c108d865d 100644
--- a/source4/include/talloc.h
+++ b/source4/include/talloc.h
@@ -47,6 +47,7 @@ typedef void TALLOC_CTX;
#define realloc_p(p, type, count) (type *)realloc_array(p, sizeof(type), count)
#define data_blob(ptr, size) data_blob_named(ptr, size, __location__)
+#define data_blob_talloc(ctx, ptr, size) data_blob_talloc_named(ctx, ptr, size, __location__)
#endif