summaryrefslogtreecommitdiff
path: root/Modules/main.c
diff options
context:
space:
mode:
authorGuido van Rossum <guido@python.org>1998-03-06 15:30:39 +0000
committerGuido van Rossum <guido@python.org>1998-03-06 15:30:39 +0000
commitcd2b49b3f22d7305318dc107ec34bfb55ecd2c19 (patch)
tree170f3671880ad6166c10ff9fa587260d118907b0 /Modules/main.c
parent344d6b6596e16dada303af946922c1fb5333a6b8 (diff)
downloadcpython-cd2b49b3f22d7305318dc107ec34bfb55ecd2c19.tar.gz
Don't use setvbuf unless HAVE_SETVBUF is defined.
Diffstat (limited to 'Modules/main.c')
-rw-r--r--Modules/main.c16
1 files changed, 12 insertions, 4 deletions
diff --git a/Modules/main.c b/Modules/main.c
index 83fd9dc625..b62597a00b 100644
--- a/Modules/main.c
+++ b/Modules/main.c
@@ -205,25 +205,33 @@ Py_Main(argc, argv)
_setmode(fileno(stdout), O_BINARY);
#endif
#ifndef MPW
+#ifdef HAVE_SETVBUF
setvbuf(stdin, (char *)NULL, _IONBF, BUFSIZ);
setvbuf(stdout, (char *)NULL, _IONBF, BUFSIZ);
setvbuf(stderr, (char *)NULL, _IONBF, BUFSIZ);
-#else
+#else /* !HAVE_SETVBUF */
+ setbuf(stdin, (char *)NULL);
+ setbuf(stdout, (char *)NULL);
+ setbuf(stderr, (char *)NULL);
+#endif /* !HAVE_SETVBUF */
+#else /* MPW */
/* On MPW (3.2) unbuffered seems to hang */
setvbuf(stdin, (char *)NULL, _IOLBF, BUFSIZ);
setvbuf(stdout, (char *)NULL, _IOLBF, BUFSIZ);
setvbuf(stderr, (char *)NULL, _IOLBF, BUFSIZ);
-#endif
+#endif /* MPW */
}
else if (Py_InteractiveFlag) {
#ifdef MS_WINDOWS
/* Doesn't have to have line-buffered -- use unbuffered */
setvbuf(stdin, (char *)NULL, _IONBF, BUFSIZ);
setvbuf(stdout, (char *)NULL, _IONBF, BUFSIZ);
-#else
+#else /* !MS_WINDOWS */
+#ifdef HAVE_SETVBUF
setvbuf(stdin, (char *)NULL, _IOLBF, BUFSIZ);
setvbuf(stdout, (char *)NULL, _IOLBF, BUFSIZ);
-#endif
+#endif /* HAVE_SETVBUF */
+#endif /* !MS_WINDOWS */
/* Leave stderr alone - it should be unbuffered anyway. */
}