From 59057c8d56629a941ab412fa195dea7c8c486b21 Mon Sep 17 00:00:00 2001 From: Stefan Metzmacher Date: Mon, 28 Aug 2006 18:21:21 +0000 Subject: r17895: - talloc_increase_ref_count() can fail - make talloc_reference() typesafe when gcc >= 3 is used metze (This used to be commit 933d1b47ad614d02cc02b602e704948b342febdb) --- source4/lib/talloc/talloc.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'source4/lib/talloc/talloc.c') diff --git a/source4/lib/talloc/talloc.c b/source4/lib/talloc/talloc.c index cc04a2425a..ba457afd6b 100644 --- a/source4/lib/talloc/talloc.c +++ b/source4/lib/talloc/talloc.c @@ -219,9 +219,12 @@ void _talloc_set_destructor(const void *ptr, int (*destructor)(void *)) /* increase the reference count on a piece of memory. */ -void talloc_increase_ref_count(const void *ptr) +int talloc_increase_ref_count(const void *ptr) { - talloc_reference(null_context, ptr); + if (!talloc_reference(null_context, ptr)) { + return -1; + } + return 0; } /* @@ -243,7 +246,7 @@ static int talloc_reference_destructor(struct talloc_reference_handle *handle) same underlying data, and you want to be able to free the two instances separately, and in either order */ -void *talloc_reference(const void *context, const void *ptr) +void *_talloc_reference(const void *context, const void *ptr) { struct talloc_chunk *tc; struct talloc_reference_handle *handle; -- cgit