diff --git a/src/plugins/python_api.c b/src/plugins/python_api.c index 0b91cf70..091b3b4a 100644 --- a/src/plugins/python_api.c +++ b/src/plugins/python_api.c @@ -1619,8 +1619,16 @@ static char* _python_plugin_name(void) { PyThreadState* ts = PyThreadState_Get(); +#if PY_VERSION_HEX >= 0x030B0000 + PyFrameObject* frame = PyThreadState_GetFrame(ts); + PyCodeObject* code = PyFrame_GetCode(frame); + char* filename = python_str_or_unicode_to_string(code->co_filename); + Py_DECREF(code); + Py_DECREF(frame); +#else PyFrameObject* frame = ts->frame; char* filename = python_str_or_unicode_to_string(frame->f_code->co_filename); +#endif gchar** split = g_strsplit(filename, "/", 0); free(filename); char* plugin_name = strdup(split[g_strv_length(split) - 1]);