From 46ca2f25ebd7bfaa588c9e5fac8b8c7b8415b3a3 Mon Sep 17 00:00:00 2001 From: "R. David Murray" Date: Wed, 22 Jul 2009 17:22:58 +0000 Subject: [PATCH] Backport of fix for issue 6542: make sure test_os.TestInvalidFD.test_closerange does not close any valid file descriptors. --- Lib/test/test_os.py | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/Lib/test/test_os.py b/Lib/test/test_os.py index fa82a754b00..207963e6fc2 100644 --- a/Lib/test/test_os.py +++ b/Lib/test/test_os.py @@ -563,7 +563,18 @@ class TestInvalidFD(unittest.TestCase): def test_closerange(self): if hasattr(os, "closerange"): fd = test_support.make_bad_fd() - self.assertEqual(os.closerange(fd, fd + 10), None) + # Make sure none of the descriptors we are about to close are + # currently valid (issue 6542). + for i in range(10): + try: os.fstat(fd+i) + except OSError: + pass + else: + break + if i < 2: + raise unittest.SkipTest( + "Unable to acquire a range of invalid file descriptors") + self.assertEqual(os.closerange(fd, fd + i-1), None) def test_dup2(self): if hasattr(os, "dup2"):