@@ -2752,16 +2752,13 @@ _PyInterpreterFrame *
27522752_PyEval_GetFrame (void )
27532753{
27542754 PyThreadState * tstate = _PyThreadState_GET ();
2755- return tstate -> cframe -> current_frame ;
2755+ return _PyThreadState_GetFrame ( tstate ) ;
27562756}
27572757
27582758PyFrameObject *
27592759PyEval_GetFrame (void )
27602760{
27612761 _PyInterpreterFrame * frame = _PyEval_GetFrame ();
2762- while (frame && _PyFrame_IsIncomplete (frame )) {
2763- frame = frame -> previous ;
2764- }
27652762 if (frame == NULL ) {
27662763 return NULL ;
27672764 }
@@ -2775,7 +2772,7 @@ PyEval_GetFrame(void)
27752772PyObject *
27762773_PyEval_GetBuiltins (PyThreadState * tstate )
27772774{
2778- _PyInterpreterFrame * frame = tstate -> cframe -> current_frame ;
2775+ _PyInterpreterFrame * frame = _PyThreadState_GetFrame ( tstate ) ;
27792776 if (frame != NULL ) {
27802777 return frame -> f_builtins ;
27812778 }
@@ -2814,7 +2811,7 @@ PyObject *
28142811PyEval_GetLocals (void )
28152812{
28162813 PyThreadState * tstate = _PyThreadState_GET ();
2817- _PyInterpreterFrame * current_frame = tstate -> cframe -> current_frame ;
2814+ _PyInterpreterFrame * current_frame = _PyThreadState_GetFrame ( tstate ) ;
28182815 if (current_frame == NULL ) {
28192816 _PyErr_SetString (tstate , PyExc_SystemError , "frame does not exist" );
28202817 return NULL ;
@@ -2833,7 +2830,7 @@ PyObject *
28332830PyEval_GetGlobals (void )
28342831{
28352832 PyThreadState * tstate = _PyThreadState_GET ();
2836- _PyInterpreterFrame * current_frame = tstate -> cframe -> current_frame ;
2833+ _PyInterpreterFrame * current_frame = _PyThreadState_GetFrame ( tstate ) ;
28372834 if (current_frame == NULL ) {
28382835 return NULL ;
28392836 }
0 commit comments