diff options
author | Eric Snow <ericsnowcurrently@gmail.com> | 2023-07-21 14:34:09 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-07-21 14:34:09 (GMT) |
commit | 0ba07b2108d4763273f3fb85544dde34c5acd40a (patch) | |
tree | b84bee32e122ca394fcce07c5934e9a543180691 /Objects/namespaceobject.c | |
parent | 87e7cb09e4258c4deb01a07dc52c1021907195d7 (diff) | |
download | cpython-0ba07b2108d4763273f3fb85544dde34c5acd40a.zip cpython-0ba07b2108d4763273f3fb85544dde34c5acd40a.tar.gz cpython-0ba07b2108d4763273f3fb85544dde34c5acd40a.tar.bz2 |
gh-105699: Fix a Crasher Related to a Deprecated Global Variable (gh-106923)
There was a slight race in _Py_ClearFileSystemEncoding() (when called from _Py_SetFileSystemEncoding()), between freeing the value and setting the variable to NULL, which occasionally caused crashes when multiple isolated interpreters were used. (Notably, I saw at least 10 different, seemingly unrelated spooky-action-at-a-distance, ways this crashed. Yay, free threading!) We avoid the problem by only setting the global variables with the main interpreter (i.e. runtime init).
Diffstat (limited to 'Objects/namespaceobject.c')
0 files changed, 0 insertions, 0 deletions