#include <Python.h>
#include <alloca.h>
+#include "util.h"
#define SD_JOURNAL_SUPPRESS_LOCATION
#include <systemd/sd-journal.h>
/* Allocate an array for the argument strings */
argc = PyTuple_Size(args);
- encoded = alloca(argc * sizeof(PyObject*));
- memset(encoded, 0, argc * sizeof(PyObject*));
+ encoded = alloca0(argc * sizeof(PyObject*));
/* Allocate sufficient iovector space for the arguments. */
iov = alloca(argc * sizeof(struct iovec));
#if PY_MAJOR_VERSION < 3
PyMODINIT_FUNC init_journal(void) {
- (void) Py_InitModule("_journal", methods);
+ PyObject *m;
+
+ m = Py_InitModule("_journal", methods);
+ if (m == NULL)
+ return;
+
+ PyModule_AddStringConstant(m, "__version__", PACKAGE_VERSION);
}
#else
};
PyMODINIT_FUNC PyInit__journal(void) {
- return PyModule_Create(&module);
+ PyObject *m;
+
+ m = PyModule_Create(&module);
+ if (m == NULL)
+ return NULL;
+
+ if (PyModule_AddStringConstant(m, "__version__", PACKAGE_VERSION)) {
+ Py_DECREF(m);
+ return NULL;
+ }
+
+ return m;
}
#endif