bpo-20602: Do not clear sys.flags and sys.float_info during shutdown (GH-8096)
There is no need to clear these immutable objects during shutdown.
This commit is contained in:
parent
c145f3bfbe
commit
249b7d59d8
|
@ -822,6 +822,22 @@ class SysModuleTest(unittest.TestCase):
|
|||
rc, stdout, stderr = assert_python_ok('-c', code)
|
||||
self.assertEqual(stdout.rstrip(), b'True')
|
||||
|
||||
@test.support.requires_type_collecting
|
||||
def test_issue20602(self):
|
||||
# sys.flags and sys.float_info were wiped during shutdown.
|
||||
code = """if 1:
|
||||
import sys
|
||||
class A:
|
||||
def __del__(self, sys=sys):
|
||||
print(sys.flags)
|
||||
print(sys.float_info)
|
||||
a = A()
|
||||
"""
|
||||
rc, out, err = assert_python_ok('-c', code)
|
||||
out = out.splitlines()
|
||||
self.assertIn(b'sys.flags', out[0])
|
||||
self.assertIn(b'sys.float_info', out[1])
|
||||
|
||||
@unittest.skipUnless(hasattr(sys, 'getandroidapilevel'),
|
||||
'need sys.getandroidapilevel()')
|
||||
def test_getandroidapilevel(self):
|
||||
|
|
|
@ -0,0 +1,2 @@
|
|||
Do not clear :data:`sys.flags` and :data:`sys.float_info` during shutdown.
|
||||
Patch by Zackery Spytz.
|
|
@ -383,8 +383,6 @@ static const char * const sys_deletes[] = {
|
|||
"last_type", "last_value", "last_traceback",
|
||||
"path_hooks", "path_importer_cache", "meta_path",
|
||||
"__interactivehook__",
|
||||
/* misc stuff */
|
||||
"flags", "float_info",
|
||||
NULL
|
||||
};
|
||||
|
||||
|
|
Loading…
Reference in New Issue