X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=src%2Fpython-systemd%2F_journal.c;h=f8e0b4f7f29e661700bd1b9d0d6c7a7d7499d0a6;hp=0bdf709aeacaa6c94712fc00e1f33e62c58ec940;hb=fd587c876d480863d56bbbdc5e9fcf7e735d98f3;hpb=f274ece0f76b5709408821e317e87aef76123db6 diff --git a/src/python-systemd/_journal.c b/src/python-systemd/_journal.c index 0bdf709ae..f8e0b4f7f 100644 --- a/src/python-systemd/_journal.c +++ b/src/python-systemd/_journal.c @@ -3,7 +3,7 @@ /*** This file is part of systemd. - Copyright 2012 David Strauss + Copyright 2012 David Strauss systemd is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by @@ -119,7 +119,13 @@ static PyMethodDef methods[] = { #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 @@ -128,12 +134,23 @@ static struct PyModuleDef module = { PyModuleDef_HEAD_INIT, "_journal", /* name of module */ NULL, /* module documentation, may be NULL */ - 0, /* size of per-interpreter state of the module */ + -1, /* size of per-interpreter state of the module */ methods }; 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