#include "collectd.h"
-#include "common.h"
+#include "utils/common/common.h"
#include "cpython.h"
static cpy_callback_t *cpy_shutdown_callbacks;
/* Make sure to hold the GIL while modifying these. */
-static int cpy_shutdown_triggered = 0;
-static int cpy_num_callbacks = 0;
+static int cpy_shutdown_triggered;
+static int cpy_num_callbacks;
static void cpy_destroy_user_data(void *data) {
cpy_callback_t *c = data;
PyObject *mod = NULL;
if (name != NULL) {
- snprintf(buf, size, "python.%s", name);
+ ssnprintf(buf, size, "python.%s", name);
return;
}
module = cpy_unicode_or_bytes_to_string(&mod);
if (module != NULL) {
- snprintf(buf, size, "python.%s", module);
+ ssnprintf(buf, size, "python.%s", module);
Py_XDECREF(mod);
PyErr_Clear();
return;
}
Py_XDECREF(mod);
- snprintf(buf, size, "python.%p", callback);
+ ssnprintf(buf, size, "python.%p", callback);
PyErr_Clear();
}
continue;
if (cpy[strlen(cpy) - 1] == '\n')
- cpy[strlen(cpy) - 1] = 0;
+ cpy[strlen(cpy) - 1] = '\0';
Py_BEGIN_ALLOW_THREADS;
ERROR("%s", cpy);
cpy_log_exception("interactive session init");
}
cur_sig = PyOS_setsig(SIGINT, python_sigint_handler);
+#if PY_VERSION_HEX < 0x03070000
PyOS_AfterFork();
+#else
+ PyOS_AfterFork_Child();
+#endif
PyEval_InitThreads();
close(*(int *)pipefd);
PyRun_InteractiveLoop(stdin, "<stdin>");