From: Michael Tremer Date: Mon, 22 Jan 2018 18:52:46 +0000 (+0100) Subject: python: Prevent crash when some repository values are unset X-Git-Tag: 0.9.28~1285^2~1121 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=a6957b62c2cdc4b9eb100c94d0dd9f9e676aff1a;p=pakfire.git python: Prevent crash when some repository values are unset Signed-off-by: Michael Tremer --- diff --git a/src/_pakfire/repo.c b/src/_pakfire/repo.c index bceba3956..3e20e839e 100644 --- a/src/_pakfire/repo.c +++ b/src/_pakfire/repo.c @@ -162,7 +162,10 @@ static int Repo_set_priority(RepoObject* self, PyObject* value) { static PyObject* Repo_get_baseurl(RepoObject* self) { const char* baseurl = pakfire_repo_get_baseurl(self->repo); - return PyUnicode_FromString(baseurl); + if (baseurl) + return PyUnicode_FromString(baseurl); + + Py_RETURN_NONE; } static int Repo_set_baseurl(RepoObject* self, PyObject* value) { @@ -177,7 +180,10 @@ static int Repo_set_baseurl(RepoObject* self, PyObject* value) { static PyObject* Repo_get_keyfile(RepoObject* self) { const char* keyfile = pakfire_repo_get_keyfile(self->repo); - return PyUnicode_FromString(keyfile); + if (keyfile) + return PyUnicode_FromString(keyfile); + + Py_RETURN_NONE; } static int Repo_set_keyfile(RepoObject* self, PyObject* value) { @@ -192,7 +198,10 @@ static int Repo_set_keyfile(RepoObject* self, PyObject* value) { static PyObject* Repo_get_mirrorlist(RepoObject* self) { const char* mirrorlist = pakfire_repo_get_mirrorlist(self->repo); - return PyUnicode_FromString(mirrorlist); + if (mirrorlist) + return PyUnicode_FromString(mirrorlist); + + Py_RETURN_NONE; } static int Repo_set_mirrorlist(RepoObject* self, PyObject* value) {