]> diplodocus.org Git - nmh/commitdiff
Removed call to fpurge() and its platform-specific emulations
authorDavid Levine <levinedl@acm.org>
Wed, 26 Dec 2012 01:25:43 +0000 (19:25 -0600)
committerDavid Levine <levinedl@acm.org>
Wed, 26 Dec 2012 01:25:43 +0000 (19:25 -0600)
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.

configure.ac
mts/smtp/smtp.c
sbr/discard.c

index c3ebacf08d60cbad6637bc8431b8abe72626137c..231528920a577816b4f620c511ad3e620e1fa9d9 100644 (file)
@@ -451,15 +451,6 @@ AC_CHECK_HEADERS([errno.h fcntl.h crypt.h ncurses/termcap.h termcap.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
index b1d57dd6cdb7775072c4e2bbab7c2089e5d29938..4b2e30a6253c799336baf7e8de67bfcf15abae32 100755 (executable)
@@ -799,8 +799,6 @@ sm_end (int type)
                smtalk (SM_QUIT, "QUIT");
            else {
                kill (sm_child, SIGKILL);
-               discard (sm_rfp);
-               discard (sm_wfp);
            }
            if (type == NOTOK) {
                sm_reply.code = sm_note.code;
index a1efa4882aadc9e70297dc167a904c6f898a2f68..83b0bfbc0c5ee9d420f96fbbc9b636130ed7ccfb 100644 (file)
@@ -20,15 +20,7 @@ discard (FILE *io)
 
     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. */
 }