Improvement to fix for issue 9926 to allow TestResult to be reused.
diff --git a/Lib/unittest/suite.py b/Lib/unittest/suite.py
index e8fbdc3..c0ae2ae 100644
--- a/Lib/unittest/suite.py
+++ b/Lib/unittest/suite.py
@@ -107,6 +107,7 @@
         if topLevel:
             self._tearDownPreviousClass(None, result)
             self._handleModuleTearDown(result)
+            result._testRunEntered = False
         return result
 
     def debug(self):
diff --git a/Lib/unittest/test/test_suite.py b/Lib/unittest/test/test_suite.py
index d212bd0..72fb527 100644
--- a/Lib/unittest/test/test_suite.py
+++ b/Lib/unittest/test/test_suite.py
@@ -353,11 +353,15 @@
                 unittest.TestSuite.__call__(self, *args, **kw)
 
         suite = MySuite()
+        result = unittest.TestResult()
         wrapper = unittest.TestSuite()
         wrapper.addTest(suite)
-        wrapper(unittest.TestResult())
+        wrapper(result)
         self.assertTrue(suite.called)
 
+        # reusing results should be permitted even if abominable
+        self.assertFalse(result._testRunEntered)
+
 
 if __name__ == '__main__':
     unittest.main()