Miss Islington (bot) 52b57eee64
[3.13] gh-125842: Fix sys.exit(0xffff_ffff) on Windows (GH-125896) (GH-125925)
On Windows, `long` is a signed 32-bit integer so it can't represent
`0xffff_ffff` without overflow. Windows exit codes are unsigned 32-bit
integers, so if a child process exits with `-1`, it will be represented
as `0xffff_ffff`.

Also fix a number of other possible cases where `_Py_HandleSystemExit`
could return with an exception set, leading to a `SystemError` (or
fatal error in debug builds) later on during shutdown.
(cherry picked from commit ad6110a93ffa82cae71af6c78692de065d3871b5)

Co-authored-by: Sam Gross <colesbury@gmail.com>
2024-10-24 16:27:30 +00:00
..
2024-05-03 06:17:32 -07:00

Miscellaneous source files for the main Python shared library