• Victor Stinner's avatar
    bpo-36763: _PyInitError always use int for exitcode (GH-13360) · dbacfc22
    Victor Stinner authored
    We cannot use "unsigned int" for exitcode on Windows, since
    Py_Main() and _Py_RunMain() always return an "int".
    
    Changes:
    
    * _PyPathConfig_ComputeSysPath0() now returns -1 if an exception is
      raised.
    * pymain_run_python() no longer uses _PyInitError but display the
      exception and set exitcode to 1 in case of error.
    * Fix _Py_RunMain(): return an exitcode rather than calling
      exit() on pymain_run_python() failure.
    * _Py_ExitInitError() no longer uses ExitProcess() on Windows, use
      exit() on all platforms.
    * _Py_ExitInitError() now fails with a fatal error if 'err' is not an
      error not an exit.
    dbacfc22
pylifecycle.c 63.4 KB