diff --git a/Lib/test/support/__init__.py b/Lib/test/support/__init__.py index 66469d088f339c..307bac65ae50a8 100644 --- a/Lib/test/support/__init__.py +++ b/Lib/test/support/__init__.py @@ -3116,6 +3116,10 @@ def get_signal_name(exitcode): except KeyError: pass + # Format Windows exit status as hexadecimal + if 0xC0000000 <= exitcode: + return f"0x{exitcode:X}" + return None class BrokenIter: diff --git a/Lib/test/test_support.py b/Lib/test/test_support.py index be7e307b4f1111..a3129dbcb0a54e 100644 --- a/Lib/test/test_support.py +++ b/Lib/test/test_support.py @@ -788,6 +788,7 @@ def test_get_signal_name(self): (128 + int(signal.SIGABRT), 'SIGABRT'), (3221225477, "STATUS_ACCESS_VIOLATION"), (0xC00000FD, "STATUS_STACK_OVERFLOW"), + (0xC0000906, "0xC0000906"), ): self.assertEqual(support.get_signal_name(exitcode), expected, exitcode)