diff options
author | Guido van Rossum <guido@python.org> | 1993-06-24 11:10:19 (GMT) |
---|---|---|
committer | Guido van Rossum <guido@python.org> | 1993-06-24 11:10:19 (GMT) |
commit | 9e90a672b44e2acfd5c6dabfb9435bb4bb46c845 (patch) | |
tree | f3904d6dfed9d57f98f9e90c93241cb23cb802ad /Python/frozenmain.c | |
parent | 5ef74b8f8edbebe22d0b86c85f08b0c618d808f7 (diff) | |
download | cpython-9e90a672b44e2acfd5c6dabfb9435bb4bb46c845.zip cpython-9e90a672b44e2acfd5c6dabfb9435bb4bb46c845.tar.gz cpython-9e90a672b44e2acfd5c6dabfb9435bb4bb46c845.tar.bz2 |
* pythonmain.c: -k option, usage message, more environment flags.
(the latter also in frozenmain.c)
* ceval.c: global 'killprint' flag raises exception when printing an
expression statement's value (useful for finding stray output)
* timemodule.c: add asctime() and ctime(). Change julian date to
1-based origin (as intended and documented).
* Removed unused DO_TIMES stuff from timemodule.c. Added 'epoch' and
'day0' globals (year where time.time() == 0 and day of the week the
epoch started).
Diffstat (limited to 'Python/frozenmain.c')
-rw-r--r-- | Python/frozenmain.c | 21 |
1 files changed, 18 insertions, 3 deletions
diff --git a/Python/frozenmain.c b/Python/frozenmain.c index 90d1623..8bc136a 100644 --- a/Python/frozenmain.c +++ b/Python/frozenmain.c @@ -30,28 +30,43 @@ extern char *getenv(); extern int debugging; extern int verbose; +extern int killprint; main(argc, argv) int argc; char **argv; { char *p; + int n, inspect, sts; int n; + if ((p = getenv("PYTHONDEBUG")) && *p != '\0') debugging = 1; if ((p = getenv("PYTHONVERBOSE")) && *p != '\0') verbose = 1; - initargs(&argc, &argv); /* Defined in config*.c */ + if ((p = getenv("PYTHONINSPECT")) && *p != '\0') + inspect = 1; + if ((p = getenv("PYTHONKILLPRINT")) && *p != '\0') + killprint = 1; + + initargs(&argc, &argv); initall(); setpythonargv(argc, argv); + n = init_frozen("__main__"); if (n == 0) fatal("__main__ not frozen"); if (n < 0) { print_error(); - goaway(1); + sts = 1; } else - goaway(0); + sts = 0; + + if (inspect && isatty((int)fileno(stdin)) && + (filename != NULL || command != NULL)) + sts = run(stdin, "<stdin>") != 0; + + goaway(sts); /*NOTREACHED*/ } |