diff options
author | Gerd Möllmann <gerd@gnu.org> | 2022-09-11 11:42:18 +0200 |
---|---|---|
committer | Gerd Möllmann <gerd@gnu.org> | 2022-09-17 15:33:10 +0200 |
commit | cbac94b4aeecdf57e2a1f3e95e27ec76505ae964 (patch) | |
tree | d9f6c4bc4a5313849d57aa14bbb57e59f6564ff2 /src/termchar.h | |
parent | 5bf8f9cc0d2fb12071301f50f9b85640d240a1fc (diff) | |
download | emacs-cbac94b4aeecdf57e2a1f3e95e27ec76505ae964.tar.gz |
Optimize tty display updates (bug#57727)
* src/dispnew.c (update_frame_1): Don'f flush if tty's
output_buffer_size is non-zero.
* src/sysdep.c (init_sys_modes): Setvbuf depending on the tty's
output_buffer_size.
* src/term.c (Ftty__set_output_buffer_size, Ftty__output_buffer_size):
Low-level interface for setting and retrieving a tty's output buffer
size.
(syms_of_term): Defsubr the new functions.
* src/termchar.h (struct tty_display_info): New member
output_buffer_size.
* stc/NEWS: Describe the change.
Diffstat (limited to 'src/termchar.h')
-rw-r--r-- | src/termchar.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/termchar.h b/src/termchar.h index 49560dbc2ad..0f172464113 100644 --- a/src/termchar.h +++ b/src/termchar.h @@ -53,6 +53,11 @@ struct tty_display_info FILE *output; /* The stream to be used for terminal output. NULL if the terminal is suspended. */ + /* Size of output buffer. A value of zero means use the default of + BUFIZE. If non-zero, also minimize writes to the tty by avoiding + calls to flush. */ + size_t output_buffer_size; + FILE *termscript; /* If nonzero, send all terminal output characters to this stream also. */ |