from discard.c. discard() is called on stdout from mhl(1) and
msh(1) in interrupt handlers, and post(8) but only with -debug.
tcflush() should do the purge when stdout is a terminal. If
it's a file or pipe, well, maybe some garbage could get flushed
out. And it's called on the streams that post uses to talk to
its smtp server, so removed those calls because they no longer
do anything. And removed LINUX_STDIO define from configure.ac.
langinfo.h wchar.h wctype.h iconv.h netdb.h \
sys/param.h sys/time.h sys/stream.h])
langinfo.h wchar.h wctype.h iconv.h netdb.h \
sys/param.h sys/time.h sys/stream.h])
-dnl
-dnl Checks for _IO_write_ptr. A Linuxism used by nmh on linux. We
-dnl really use a whole set of them, but this check should be
-dnl sufficient.
-dnl
-AC_CHECK_HEADER(libio.h, [
- AC_EGREP_HEADER(_IO_write_ptr, libio.h, [
- AC_DEFINE(LINUX_STDIO,1,[Use the Linux _IO_*_ptr defines from <libio.h>.]) ]) ])
-
AC_CHECK_HEADER([sys/ptem.h], AC_DEFINE(WINSIZE_IN_PTEM,1,
[Define to 1 if `struct winsize' requires <sys/ptem.h>.]),,
[[#if HAVE_SYS_STREAM_H
AC_CHECK_HEADER([sys/ptem.h], AC_DEFINE(WINSIZE_IN_PTEM,1,
[Define to 1 if `struct winsize' requires <sys/ptem.h>.]),,
[[#if HAVE_SYS_STREAM_H
smtalk (SM_QUIT, "QUIT");
else {
kill (sm_child, SIGKILL);
smtalk (SM_QUIT, "QUIT");
else {
kill (sm_child, SIGKILL);
- discard (sm_rfp);
- discard (sm_wfp);
}
if (type == NOTOK) {
sm_reply.code = sm_note.code;
}
if (type == NOTOK) {
sm_reply.code = sm_note.code;
tcflush (fileno(io), TCOFLUSH);
tcflush (fileno(io), TCOFLUSH);
-#if defined(_FSTDIO) || defined(__DragonFly__)
- fpurge (io);
-#else
-# ifdef LINUX_STDIO
- io->_IO_write_ptr = io->_IO_write_base;
-# else
- if ((io->_ptr = io->_base))
- io->_cnt = 0;
-# endif
-#endif
+ /* There used to be an fpurge() here on some platforms, stdio
+ hackery on others. But it didn't seem necessary. */