diff options
| author | Miss Islington (bot) <31488909+miss-islington@users.noreply.github.com> | 2018-02-21 00:09:41 (GMT) |
|---|---|---|
| committer | Eric Snow <ericsnowcurrently@gmail.com> | 2018-02-21 00:09:41 (GMT) |
| commit | eed3c7af4ec520d324a55e0357f41589a66906f7 (patch) | |
| tree | 6d6560abb807b79b751ffd51337906ecc7eb8c50 /Python/getargs.c | |
| parent | 1d927d4feba856cacc026a9167ba38c73a4e7657 (diff) | |
| download | cpython-eed3c7af4ec520d324a55e0357f41589a66906f7.zip cpython-eed3c7af4ec520d324a55e0357f41589a66906f7.tar.gz cpython-eed3c7af4ec520d324a55e0357f41589a66906f7.tar.bz2 | |
bpo-32604: Swap threads only if the interpreter is different. (gh-5783)
The CPython runtime assumes that there is a one-to-one relationship (for a given interpreter) between PyThreadState and OS threads. Sending and receiving on a channel in the same interpreter was causing crashes because of this (specifically due to a check in PyThreadState_Swap()). The solution is to not switch threads if the interpreter is the same.
(cherry picked from commit f53d9f2778a87bdd48eb9030f782a4ebf9e7622f)
Co-authored-by: Eric Snow <ericsnowcurrently@gmail.com>
Diffstat (limited to 'Python/getargs.c')
0 files changed, 0 insertions, 0 deletions
