40 PyThreadState *tstate = PyGILState_GetThisThreadState();
43 PyFrameObject *frame = PyThreadState_GetFrame(tstate);
45 printf(frame ?
"Python stack trace:\n" :
"No Python stack trace available.\n");
48 PyCodeObject *frame_co = PyFrame_GetCode(frame);
49 int line = PyFrame_GetLineNumber(frame);
50 const char *filename = PyUnicode_AsUTF8(frame_co->co_filename);
51 const char *funcname = PyUnicode_AsUTF8(frame_co->co_name);
52 printf(
" %s:%d %s\n", filename, line, funcname);
54 PyFrameObject *frame_back = PyFrame_GetBack(frame);
61 printf(
"No Python thread state available.\n");