From: Michael Tremer Date: Sat, 20 Jan 2018 14:11:20 +0000 (+0100) Subject: python: Drop Pakfire reference from Archive X-Git-Tag: 0.9.28~1285^2~1143 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=6b2c454de2497e8042980460b9f8e10fd2b94937;p=pakfire.git python: Drop Pakfire reference from Archive Signed-off-by: Michael Tremer --- diff --git a/src/_pakfire/archive.c b/src/_pakfire/archive.c index f66d86bf3..36ba7f4cf 100644 --- a/src/_pakfire/archive.c +++ b/src/_pakfire/archive.c @@ -29,7 +29,6 @@ static PyObject* Archive_new(PyTypeObject* type, PyObject* args, PyObject* kwds) { ArchiveObject* self = (ArchiveObject *)type->tp_alloc(type, 0); if (self) { - self->pakfire = NULL; self->archive = NULL; } @@ -37,10 +36,7 @@ static PyObject* Archive_new(PyTypeObject* type, PyObject* args, PyObject* kwds) } static void Archive_dealloc(ArchiveObject* self) { - if (self->archive) - pakfire_archive_unref(self->archive); - - Py_DECREF(self->pakfire); + pakfire_archive_unref(self->archive); Py_TYPE(self)->tp_free((PyObject *)self); } @@ -52,11 +48,9 @@ static int Archive_init(ArchiveObject* self, PyObject* args, PyObject* kwds) { if (!PyArg_ParseTuple(args, "O!s", &PakfireType, &pakfire, &filename)) return -1; - self->pakfire = pakfire; - Py_INCREF(self->pakfire); - - self->archive = pakfire_archive_open(self->pakfire->pakfire, filename); - assert(self->archive); + self->archive = pakfire_archive_open(pakfire->pakfire, filename); + if (!self->archive) + return -1; return 0; } diff --git a/src/_pakfire/archive.h b/src/_pakfire/archive.h index 89cca394f..8dfef9746 100644 --- a/src/_pakfire/archive.h +++ b/src/_pakfire/archive.h @@ -29,7 +29,6 @@ typedef struct { PyObject_HEAD - PakfireObject* pakfire; PakfireArchive archive; } ArchiveObject;