systemd/0032-systemd-python-fix-ini...

38 lines
1.1 KiB
Diff

From 7efa944f689234f12798d737f9597f93621193da Mon Sep 17 00:00:00 2001
From: Steven Hiscocks <steven@hiscocks.me.uk>
Date: Thu, 15 Aug 2013 12:50:32 -0400
Subject: [PATCH] systemd-python: fix initialization of _Reader objects
https://bugzilla.redhat.com/show_bug.cgi?id=995575
---
src/python-systemd/_reader.c | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/src/python-systemd/_reader.c b/src/python-systemd/_reader.c
index 6ac2f20..be8ada2 100644
--- a/src/python-systemd/_reader.c
+++ b/src/python-systemd/_reader.c
@@ -64,6 +64,10 @@ static PyStructSequence_Desc Monotonic_desc = {
};
#endif
+/**
+ * Convert a Python sequence object into a strv (char**), and
+ * None into a NULL pointer.
+ */
static int strv_converter(PyObject* obj, void *_result) {
char ***result = _result;
Py_ssize_t i, len;
@@ -73,6 +77,11 @@ static int strv_converter(PyObject* obj, void *_result) {
if (!obj)
goto cleanup;
+ if (obj == Py_None) {
+ *result = NULL;
+ return 1;
+ }
+
if (!PySequence_Check(obj))
return 0;