[lvm-devel] [PATCH 2/5] python: Build correct python value for numerical property
Tony Asleson
tasleson at redhat.com
Tue May 5 19:25:28 UTC 2015
This ensures negative returned values are represented as expected.
Python part of the fix for:
https://bugzilla.redhat.com/show_bug.cgi?id=838257
Signed-off-by: Tony Asleson <tasleson at redhat.com>
---
python/liblvm.c | 11 ++++++++---
1 files changed, 8 insertions(+), 3 deletions(-)
diff --git a/python/liblvm.c b/python/liblvm.c
index 6151745..f4a7a2d 100644
--- a/python/liblvm.c
+++ b/python/liblvm.c
@@ -870,10 +870,15 @@ static PyObject *get_property(struct lvm_property_value *prop)
if (!(pytuple = PyTuple_New(2)))
return NULL;
- if (prop->is_integer)
- PyTuple_SET_ITEM(pytuple, 0, Py_BuildValue("K", prop->value.integer));
- else
+ if (prop->is_integer) {
+ if (prop->is_signed) {
+ PyTuple_SET_ITEM(pytuple, 0, Py_BuildValue("L", prop->value.signed_integer));
+ } else {
+ PyTuple_SET_ITEM(pytuple, 0, Py_BuildValue("K", prop->value.integer));
+ }
+ } else {
PyTuple_SET_ITEM(pytuple, 0, PYSTRTYPE_FROMSTRING(prop->value.string));
+ }
if (prop->is_settable)
setable = Py_True;
--
1.7.1
More information about the lvm-devel
mailing list