X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;ds=sidebyside;f=src%2Fpython-systemd%2F_reader.c;h=b754014e9bc50d8a27bceac0ecdf5a3ba03a4182;hb=6d0c634ca32c772c72b0bb4207866e2a35f4eadb;hp=481da245e91efc4be004fa3d5397e078db9f78af;hpb=b835982344834085a47254f0cd8cc437b7678719;p=elogind.git diff --git a/src/python-systemd/_reader.c b/src/python-systemd/_reader.c index 481da245e..b754014e9 100644 --- a/src/python-systemd/_reader.c +++ b/src/python-systemd/_reader.c @@ -57,7 +57,7 @@ Journal_init(Journal *self, PyObject *args, PyObject *keywds) char *path=NULL; static char *kwlist[] = {"flags", "path", NULL}; - if (! PyArg_ParseTupleAndKeywords(args, keywds, "|is", kwlist, + if (! PyArg_ParseTupleAndKeywords(args, keywds, "|iz", kwlist, &flags, &path)) return 1; @@ -326,8 +326,7 @@ Journal_seek(Journal *self, PyObject *args, PyObject *keywds) PyErr_SetString(PyExc_ValueError, "Invalid value for whence"); } - if (result) - Py_DECREF(result); + Py_XDECREF(result); if (PyErr_Occurred()) return NULL; Py_RETURN_NONE; @@ -498,6 +497,8 @@ Journal_iternext(PyObject *self) Py_ssize_t dict_size; dict = PyObject_CallMethod(self, "get_next", ""); + if (PyErr_Occurred()) + return NULL; dict_size = PyDict_Size(dict); if ((int64_t) dict_size > 0LL) { return dict;