refs: implement reference dealloc
This commit is contained in:
1
TODO.txt
1
TODO.txt
@@ -5,7 +5,6 @@ Signature
|
|||||||
|
|
||||||
References
|
References
|
||||||
==========
|
==========
|
||||||
- Free the git_reference struct.
|
|
||||||
- Wrap missing functions: git_reference_foreach, git_reference_is_packed,
|
- Wrap missing functions: git_reference_foreach, git_reference_is_packed,
|
||||||
git_reference_reload
|
git_reference_reload
|
||||||
|
|
||||||
|
9
pygit2.c
9
pygit2.c
@@ -2364,6 +2364,13 @@ static PyTypeObject WalkerType = {
|
|||||||
0, /* tp_new */
|
0, /* tp_new */
|
||||||
};
|
};
|
||||||
|
|
||||||
|
static void
|
||||||
|
Reference_dealloc(Reference *self)
|
||||||
|
{
|
||||||
|
git_reference_free(self->reference);
|
||||||
|
PyObject_Del(self);
|
||||||
|
}
|
||||||
|
|
||||||
static PyObject *
|
static PyObject *
|
||||||
Reference_delete(Reference *self, PyObject *args)
|
Reference_delete(Reference *self, PyObject *args)
|
||||||
{
|
{
|
||||||
@@ -2569,7 +2576,7 @@ static PyTypeObject ReferenceType = {
|
|||||||
"pygit2.Reference", /* tp_name */
|
"pygit2.Reference", /* tp_name */
|
||||||
sizeof(Reference), /* tp_basicsize */
|
sizeof(Reference), /* tp_basicsize */
|
||||||
0, /* tp_itemsize */
|
0, /* tp_itemsize */
|
||||||
0, /* tp_dealloc */
|
(destructor)Reference_dealloc, /* tp_dealloc */
|
||||||
0, /* tp_print */
|
0, /* tp_print */
|
||||||
0, /* tp_getattr */
|
0, /* tp_getattr */
|
||||||
0, /* tp_setattr */
|
0, /* tp_setattr */
|
||||||
|
Reference in New Issue
Block a user