summaryrefslogtreecommitdiffstats
path: root/Python/pythonrun.c
diff options
context:
space:
mode:
Diffstat (limited to 'Python/pythonrun.c')
-rw-r--r--Python/pythonrun.c38
1 files changed, 3 insertions, 35 deletions
diff --git a/Python/pythonrun.c b/Python/pythonrun.c
index 381c987..bfed548 100644
--- a/Python/pythonrun.c
+++ b/Python/pythonrun.c
@@ -373,8 +373,9 @@ initmain()
Py_FatalError("can't create __main__ module");
d = PyModule_GetDict(m);
if (PyDict_GetItemString(d, "__builtins__") == NULL) {
- if (PyDict_SetItemString(d, "__builtins__",
- PyEval_GetBuiltins()))
+ PyObject *bimod = PyImport_ImportModule("__builtin__");
+ if (bimod == NULL ||
+ PyDict_SetItemString(d, "__builtins__", bimod) != 0)
Py_FatalError("can't add __builtins__ to __main__");
}
}
@@ -1060,46 +1061,13 @@ Py_Exit(sts)
#endif
}
-#ifdef HAVE_SIGNAL_H
-static RETSIGTYPE
-sighandler(sig)
- int sig;
-{
- signal(sig, SIG_DFL); /* Don't catch recursive signals */
- /* Do essential exit processing only */
- call_sys_exitfunc();
- call_ll_exitfuncs();
-#ifdef HAVE_KILL
- kill(getpid(), sig); /* Pretend the signal killed us */
-#else
- exit(1);
-#endif
- /*NOTREACHED*/
-}
-#endif
-
static void
initsigs()
{
- RETSIGTYPE (*t)();
#ifdef HAVE_SIGNAL_H
#ifdef SIGPIPE
signal(SIGPIPE, SIG_IGN);
#endif
-#ifdef SIGHUP
- t = signal(SIGHUP, SIG_IGN);
- if (t == SIG_DFL)
- signal(SIGHUP, sighandler);
- else
- signal(SIGHUP, t);
-#endif
-#ifdef SIGTERM
- t = signal(SIGTERM, SIG_IGN);
- if (t == SIG_DFL)
- signal(SIGTERM, sighandler);
- else
- signal(SIGTERM, t);
-#endif
#endif /* HAVE_SIGNAL_H */
PyOS_InitInterrupts(); /* May imply initsignal() */
}