This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author timbishop
Recipients
Date 2007-07-25.10:25:48
SpamBayes Score
Marked as misclassified
Message-id
In-reply-to
Content
I'm wondering if this Abort is a red herring. It's caused by the following section in PyThreadState_Swap in Python/pystate.c:

#if defined(Py_DEBUG) && defined(WITH_THREAD)
        if (newts) {
                /* This can be called from PyEval_RestoreThread(). Similar
                   to it, we need to ensure errno doesn't change.
                */
                int err = errno;
                PyThreadState *check = PyGILState_GetThisThreadState();
                if (check && check->interp == newts->interp && check != newts)
                        Py_FatalError("Invalid thread state for this thread");
                errno = err;
        }
#endif  

Specifically this test is true:

check->interp == newts->interp

I'm not convinced if this is right, and a friend who's a bit more clued up than me isn't sure either.

Could someone look at it to check?
History
Date User Action Args
2007-08-23 14:58:48adminlinkissue1758146 messages
2007-08-23 14:58:48admincreate