From c588feeea94788e164286dbd757e34829a2eefb5 Mon Sep 17 00:00:00 2001 From: Victor Stinner Date: Sat, 27 Jul 2013 02:39:09 +0200 Subject: 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() --- Modules/python.c | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'Modules/python.c') diff --git a/Modules/python.c b/Modules/python.c index 326aa36983..9811c01d49 100644 --- a/Modules/python.c +++ b/Modules/python.c @@ -45,6 +45,11 @@ main(int argc, char **argv) #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); -- cgit v1.2.1