Issue 22149: the frame of a suspended generator should not have a local trace function (original) (raw)
When tracing, the frame of a suspended generator should not have an f_trace function as there is no way to delete the frame f_trace attribute in that case even though tracing may have been disabled.
The patch relies on the fact that whenever the generator is resumed, a 'call' tracing event is issued and the generator's frame f_trace is set again. As expected, frames, including generators' frames, have their f_trace attribute cleared on the 'return' tracing event that is issued when the frame goes out of scope or when the system's trace function has been removed.