diff options
author | Victor Stinner <victor.stinner@gmail.com> | 2013-12-13 02:01:38 +0100 |
---|---|---|
committer | Victor Stinner <victor.stinner@gmail.com> | 2013-12-13 02:01:38 +0100 |
commit | ede64d46c3a6e8799206070d1c1e3120d0ca1df7 (patch) | |
tree | 1bdfb543fc35a8a9c96c5e9b793d7b325075ee1f /Include | |
parent | 8a61f72f3b16ffad9a22d885bc929a4f70630f0a (diff) | |
download | cpython-ede64d46c3a6e8799206070d1c1e3120d0ca1df7.tar.gz |
Issue #14432: Remove the thread state field from the frame structure. Fix a
crash when a generator is created in a C thread that is destroyed while the
generator is still used. The issue was that a generator contains a frame, and
the frame kept a reference to the Python state of the destroyed C thread. The
crash occurs when a trace function is setup.
Diffstat (limited to 'Include')
-rw-r--r-- | Include/frameobject.h | 1 |
1 files changed, 0 insertions, 1 deletions
diff --git a/Include/frameobject.h b/Include/frameobject.h index b41bea684a..966ff1f6e6 100644 --- a/Include/frameobject.h +++ b/Include/frameobject.h @@ -39,7 +39,6 @@ typedef struct _frame { /* Borrowed reference to a generator, or NULL */ PyObject *f_gen; - PyThreadState *f_tstate; int f_lasti; /* Last instruction if called */ /* Call PyFrame_GetLineNumber() instead of reading this field directly. As of 2.3 f_lineno is only valid when tracing is |