From c0b9526aaf29442f85f62232e22aecfb484b1576 Mon Sep 17 00:00:00 2001 From: Kamen Mazdrashki Date: Fri, 8 Oct 2010 04:21:07 +0300 Subject: pytalloc: use talloc_unlink() to free py_talloc objects Those type of objects are referenced every time we assign them to other py_talloc objects, which leads to runtime warnings that we are trying to free an object with references Wrap talloc_unlink() in SMB_ASSERT() to ensure we catch possible failure Autobuild-User: Kamen Mazdrashki Autobuild-Date: Wed Oct 20 21:37:06 UTC 2010 on sn-devel-104 --- lib/talloc/pytalloc.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'lib/talloc') diff --git a/lib/talloc/pytalloc.c b/lib/talloc/pytalloc.c index b0b7394875..ae59b69625 100644 --- a/lib/talloc/pytalloc.c +++ b/lib/talloc/pytalloc.c @@ -21,6 +21,8 @@ #include "replace.h" #include #include "pytalloc.h" +#include "lib/util/debug.h" +#include "lib/util/util.h" /** * Simple dealloc for talloc-wrapping PyObjects @@ -28,7 +30,7 @@ void py_talloc_dealloc(PyObject* self) { py_talloc_Object *obj = (py_talloc_Object *)self; - talloc_free(obj->talloc_ctx); + SMB_ASSERT(talloc_unlink(NULL, obj->talloc_ctx) != -1); obj->talloc_ctx = NULL; self->ob_type->tp_free(self); } -- cgit