diff options
author | Guido van Rossum <guido@python.org> | 2001-08-16 08:21:42 (GMT) |
---|---|---|
committer | Guido van Rossum <guido@python.org> | 2001-08-16 08:21:42 (GMT) |
commit | 70d893a6aaf335383d2efcf7c40194e4f1a7e474 (patch) | |
tree | 5c41f9d3b285915052cf8eb32d2c1fbc55953642 | |
parent | ba21a49f9d55edf699d40b9a6a5a5499a4b233b4 (diff) | |
download | cpython-70d893a6aaf335383d2efcf7c40194e4f1a7e474.zip cpython-70d893a6aaf335383d2efcf7c40194e4f1a7e474.tar.gz cpython-70d893a6aaf335383d2efcf7c40194e4f1a7e474.tar.bz2 |
Bunchathings:
- initsigs(): Ignore SIGXFZ so writing files beyond the file system
size limit won't kill us.
- Py_Initialize(): call _Py_ReadyTypes() instead of readying types
here.
- Py_Initialize(): call _PyImport_FixupExtension() for module
"extensions". (SF bug #422004.)
-rw-r--r-- | Python/pythonrun.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/Python/pythonrun.c b/Python/pythonrun.c index f579f44..4ee82e4 100644 --- a/Python/pythonrun.c +++ b/Python/pythonrun.c @@ -94,6 +94,7 @@ Py_Initialize(void) PyThreadState *tstate; PyObject *bimod, *sysmod; char *p; + extern void _Py_ReadyTypes(void); if (initialized) return; @@ -115,11 +116,7 @@ Py_Initialize(void) Py_FatalError("Py_Initialize: can't make first thread"); (void) PyThreadState_Swap(tstate); - if (PyType_Ready(&PyType_Type) < 0) - Py_FatalError("Py_Initialize: can't initialize 'type'"); - - if (PyType_Ready(&PyList_Type) < 0) - Py_FatalError("Py_Initialize: can't initialize 'list'"); + _Py_ReadyTypes(); interp->modules = PyDict_New(); if (interp->modules == NULL) @@ -155,6 +152,7 @@ Py_Initialize(void) /* phase 2 of builtins */ _PyImport_FixupExtension("__builtin__", "__builtin__"); + _PyImport_FixupExtension("exceptions", "exceptions"); initsigs(); /* Signal handling stuff, including initintr() */ @@ -1326,6 +1324,9 @@ initsigs(void) #ifdef SIGPIPE signal(SIGPIPE, SIG_IGN); #endif +#ifdef SIGXFZ + signal(SIGXFZ, SIG_IGN); +#endif #endif /* HAVE_SIGNAL_H */ PyOS_InitInterrupts(); /* May imply initsignal() */ } |