Mercurial > cpython-lru_cache-weakref
diff Modules/python.c @ 84861:47c6aa17fd90
Issue #15893: Improve error handling in main() and Py_FrozenMain()
* handle _PyMem_RawStrdup() failure
* Py_FrozenMain() releases memory on error
* Py_FrozenMain() duplicates the old locale, as done in main()
| author | Victor Stinner <victor.stinner@gmail.com> |
|---|---|
| date | Sat, 27 Jul 2013 02:39:09 +0200 |
| parents | 386ab2c12301 |
| children |
line wrap: on
line diff
--- a/Modules/python.c Sat Jul 27 02:24:52 2013 +0200 +++ b/Modules/python.c Sat Jul 27 02:39:09 2013 +0200 @@ -45,6 +45,11 @@ #endif oldloc = _PyMem_RawStrdup(setlocale(LC_ALL, NULL)); + if (!oldloc) { + fprintf(stderr, "out of memory\n"); + return 1; + } + setlocale(LC_ALL, ""); for (i = 0; i < argc; i++) { argv_copy[i] = _Py_char2wchar(argv[i], NULL);
