diff options
author | Jim Blandy <jimb@redhat.com> | 1993-05-27 02:12:20 +0000 |
---|---|---|
committer | Jim Blandy <jimb@redhat.com> | 1993-05-27 02:12:20 +0000 |
commit | aca296f09c93693fd14fce5a73a134681dc5d1c4 (patch) | |
tree | 5ee6145eec6de8e1db430c91683943994bfb9485 /src/systty.h | |
parent | 3d9904a2c4c77716002dc33fb0cba6e40e6a6dca (diff) | |
download | emacs-aca296f09c93693fd14fce5a73a134681dc5d1c4.tar.gz |
* systty.h (HAVE_LTCHARS, HAVE_TCHARS): New macros; define them if
we have those structures, but *don't* define them if we have
TERMIOS, whose functions take care of those parameters; that
screws up AIX.
(struct emacs_tty): Test those symbols, instead of the ioctl
commands.
* sysdep.c (emacs_get_tty, emacs_set_tty, new_ltchars, new_tchars,
init_sys_modes): Same.
Diffstat (limited to 'src/systty.h')
-rw-r--r-- | src/systty.h | 21 |
1 files changed, 19 insertions, 2 deletions
diff --git a/src/systty.h b/src/systty.h index 98e97960540..d4a77d2847f 100644 --- a/src/systty.h +++ b/src/systty.h @@ -157,6 +157,17 @@ static struct sensemode { #undef SIGIO #endif +/* On TERMIOS systems, the tcmumbleattr calls take care of these + parameters, and it's a bad idea to use them (on AIX, it makes the + tty hang for a long time). +#if defined (TIOCGLTC) && !defined (HAVE_TERMIOS) +#define HAVE_LTCHARS +#endif + +#if defined (TIOCGETC) && !defined (HAVE_TERMIOS) +#define HAVE_TCHARS +#endif + /* Try to establish the correct character to disable terminal functions in a system-independent manner. Note that USG (at least) define @@ -286,13 +297,19 @@ struct emacs_tty { #endif #endif #endif -#ifdef TIOCGLTC + +/* If we have TERMIOS, we don't need to do this - they're taken care of + by the tc*attr calls. */ +#ifndef HAVE_TERMIOS +#ifdef HAVE_LTCHARS struct ltchars ltchars; #endif -#ifdef TIOCGETC + +#ifdef HAVE_TCHARS struct tchars tchars; int lmode; #endif +#endif }; /* Define EMACS_GET_TTY and EMACS_SET_TTY, |