1
0
mirror of https://github.com/samba-team/samba.git synced 2025-07-21 12:59:09 +03:00

python: Allow wrapping pointers within talloc'ed memory that are not talloc contexts.

(This used to be commit 9c038a7411)
This commit is contained in:
Jelmer Vernooij
2008-01-13 20:41:34 +01:00
parent f7a0ef04f0
commit bfab9862fc
3 changed files with 42 additions and 23 deletions

View File

@ -22,14 +22,16 @@
void py_talloc_dealloc(PyObject* self)
{
py_talloc_Object *obj = (py_talloc_Object *)self;
talloc_free(obj->talloc_ptr);
talloc_free(obj->talloc_ctx);
PyObject_Del(self);
}
PyObject *py_talloc_import(PyTypeObject *py_type, void *ptr)
PyObject *py_talloc_import(PyTypeObject *py_type, TALLOC_CTX *mem_ctx,
void *ptr)
{
PyObject *ret = PyObject_New(py_talloc_Object, &py_type);
ret->talloc_ptr = talloc_reference(NULL, ptr);
ret->talloc_ctx = talloc_reference(mem_ctx, ptr);
ret->ptr = ptr;
return ret;
}
@ -38,5 +40,5 @@ PyObject *py_talloc_default_repr(PyObject *py_obj)
py_talloc_Object *obj = (py_talloc_Object *)py_obj;
return PyString_FromFormat("<talloc: %s>",
talloc_get_name(obj->talloc_ptr));
talloc_get_name(obj->talloc_ctx));
}