Mercurial > cpython-lru_cache-weakref
diff Python/pythonrun.c @ 59867:a366d631a629 3.1
Revert my change on initsite(): don't change import site error handler in 3.1,
as I did for 2.6. But fix the other bugs :-)
| author | Victor Stinner <victor.stinner@haypocalc.com> |
|---|---|
| date | Sun, 21 Mar 2010 21:57:42 +0000 |
| parents | c2d2e26bcf7f |
| children | 677511edf05c |
line wrap: on
line diff
--- a/Python/pythonrun.c Sun Mar 21 21:48:45 2010 +0000 +++ b/Python/pythonrun.c Sun Mar 21 21:57:42 2010 +0000 @@ -712,12 +712,22 @@ static void initsite(void) { - PyObject *m; + PyObject *m, *f; m = PyImport_ImportModule("site"); if (m == NULL) { - PyErr_Print(); - Py_Finalize(); - exit(1); + f = PySys_GetObject("stderr"); + if (f == NULL || f == Py_None) + return; + if (Py_VerboseFlag) { + PyFile_WriteString( + "'import site' failed; traceback:\n", f); + PyErr_Print(); + } + else { + PyFile_WriteString( + "'import site' failed; use -v for traceback\n", f); + PyErr_Clear(); + } } else { Py_DECREF(m);
