Simplify stdout buffering

* src/sysdep.c (_sobuf): Remove; we no longer need this
microoptimization.
(init_sys_modes): Simplify by assuming setvbuf.
This commit is contained in:
Paul Eggert 2019-06-20 00:37:52 -07:00
parent 2dbe05d01a
commit 920745eba2

View file

@ -1073,16 +1073,6 @@ emacs_set_tty (int fd, struct emacs_tty *settings, bool flushp)
static int old_fcntl_owner[FD_SETSIZE];
#endif /* F_SETOWN */
/* This may also be defined in stdio,
but if so, this does no harm,
and using the same name avoids wasting the other one's space. */
#if defined (USG)
unsigned char _sobuf[BUFSIZ+8];
#else
char _sobuf[BUFSIZ];
#endif
/* Initialize the terminal mode on all tty devices that are currently
open. */
@ -1302,14 +1292,7 @@ init_sys_modes (struct tty_display_info *tty_out)
}
#endif /* F_GETOWN */
#ifdef _IOFBF
/* This symbol is defined on recent USG systems.
Someone says without this call USG won't really buffer the file
even with a call to setbuf. */
setvbuf (tty_out->output, (char *) _sobuf, _IOFBF, sizeof _sobuf);
#else
setbuf (tty_out->output, (char *) _sobuf);
#endif
setvbuf (tty_out->output, NULL, _IOFBF, BUFSIZ);
if (tty_out->terminal->set_terminal_modes_hook)
tty_out->terminal->set_terminal_modes_hook (tty_out->terminal);