X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;f=src%2Fpyvalues.c;h=4f5c4ce3ac41eb46f3172e5d8b0cee89a5d50b37;hb=32d5f1af68d156c1888520dc18b4cdc7689dfca9;hp=307af175474a16aee1585ba5e4582a4c7c2a2309;hpb=a05485da75ec42a9aa38354e0d0364885b1ecad9;p=collectd.git diff --git a/src/pyvalues.c b/src/pyvalues.c index 307af175..4f5c4ce3 100644 --- a/src/pyvalues.c +++ b/src/pyvalues.c @@ -419,7 +419,7 @@ static meta_data_t *cpy_build_meta(PyObject *meta) { meta_data_t *m = NULL; PyObject *l; - if (!meta) + if ((meta == NULL) || (meta == Py_None)) return NULL; l = PyDict_Items(meta); /* New reference. */ @@ -427,8 +427,12 @@ static meta_data_t *cpy_build_meta(PyObject *meta) { cpy_log_exception("building meta data"); return NULL; } - m = meta_data_create(); + s = PyList_Size(l); + if (s < 0) + return NULL; + + m = meta_data_create(); for (i = 0; i < s; ++i) { const char *string, *keystring; PyObject *key, *value, *item, *tmp; @@ -767,7 +771,7 @@ static void Values_dealloc(PyObject *self) { } static PyMemberDef Values_members[] = { - {"interval", T_INT, offsetof(Values, interval), 0, interval_doc}, + {"interval", T_DOUBLE, offsetof(Values, interval), 0, interval_doc}, {"values", T_OBJECT_EX, offsetof(Values, values), 0, values_doc}, {"meta", T_OBJECT_EX, offsetof(Values, meta), 0, meta_doc}, {NULL}