From e8c11c7df0f1d582494922cbadb717296c02e05b Mon Sep 17 00:00:00 2001 From: Tony Asleson Date: Mon, 4 May 2015 15:19:48 -0500 Subject: [PATCH] python: Check for NULL value before constructing string property When retrieving a property value that is a string, if the character pointer in C was NULL, we would segfault. This change checks for non-null before creating a python string representation. In the case where the character pointer is NULL we will return a python 'None' for the value. Signed-off-by: Tony Asleson --- python/liblvm.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/python/liblvm.c b/python/liblvm.c index f4a7a2de9..089abb367 100644 --- a/python/liblvm.c +++ b/python/liblvm.c @@ -877,7 +877,11 @@ static PyObject *get_property(struct lvm_property_value *prop) PyTuple_SET_ITEM(pytuple, 0, Py_BuildValue("K", prop->value.integer)); } } else { - PyTuple_SET_ITEM(pytuple, 0, PYSTRTYPE_FROMSTRING(prop->value.string)); + if ( prop->value.string ) { + PyTuple_SET_ITEM(pytuple, 0, PYSTRTYPE_FROMSTRING(prop->value.string)); + } else { + PyTuple_SET_ITEM(pytuple, 0, Py_None); + } } if (prop->is_settable)