diff options
author | Gregory P. Smith <greg@krypto.org> | 2015-01-22 17:53:24 -0800 |
---|---|---|
committer | Gregory P. Smith <greg@krypto.org> | 2015-01-22 17:53:24 -0800 |
commit | f96f55a3d0202f625ddb021e4768f39a08594b1b (patch) | |
tree | 5635e9e954272393a993fdaa3cf563e91f86f383 /Python/sysmodule.c | |
parent | a442c1f64b48e61b2c1e8f8e4cf56858f3e9221c (diff) | |
parent | 2e0399ab422ca2b0224c0bffcf7535c855789091 (diff) | |
download | cpython-f96f55a3d0202f625ddb021e4768f39a08594b1b.tar.gz |
Only pass -E to the child interpreter if our interpreter was running in that
mode. Explicitly remove the PYTHONFAULTHANDLER environment variable before
launching a child interpreter when its presence would impact the test (the
reason -E was being used in the first place).
This enables running the test in an environment where other Python environment variables must be set in order for things to run (such as using PYTHONHOME to
tell an embedded interpreter where it should think it lives).
Diffstat (limited to 'Python/sysmodule.c')
-rw-r--r-- | Python/sysmodule.c | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/Python/sysmodule.c b/Python/sysmodule.c index 290eec1199..0639231282 100644 --- a/Python/sysmodule.c +++ b/Python/sysmodule.c @@ -1121,6 +1121,16 @@ PyDoc_STRVAR(sys_clear_type_cache__doc__, "_clear_type_cache() -> None\n\ Clear the internal type lookup cache."); +static PyObject * +sys_is_finalizing(PyObject* self, PyObject* args) +{ + return PyBool_FromLong(_Py_Finalizing != NULL); +} + +PyDoc_STRVAR(is_finalizing_doc, +"is_finalizing()\n\ +Return True if Python is exiting."); + static PyMethodDef sys_methods[] = { /* Might as well keep this in alphabetic order */ @@ -1167,6 +1177,7 @@ static PyMethodDef sys_methods[] = { getwindowsversion_doc}, #endif /* MS_WINDOWS */ {"intern", sys_intern, METH_VARARGS, intern_doc}, + {"is_finalizing", sys_is_finalizing, METH_NOARGS, is_finalizing_doc}, #ifdef USE_MALLOPT {"mdebug", sys_mdebug, METH_VARARGS}, #endif @@ -1681,7 +1692,7 @@ _PySys_Init(void) } #endif - /* stdin/stdout/stderr are now set by pythonrun.c */ + /* stdin/stdout/stderr are set in pylifecycle.c */ SET_SYS_FROM_STRING_BORROW("__displayhook__", PyDict_GetItemString(sysdict, "displayhook")); |