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 <kamenim@samba.org>
Autobuild-Date: Wed Oct 20 21:37:06 UTC 2010 on sn-devel-104
#include "replace.h"
#include <talloc.h>
#include "pytalloc.h"
+#include "lib/util/debug.h"
+#include "lib/util/util.h"
/**
* Simple dealloc for talloc-wrapping PyObjects
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);
}