#include "rldefs.h"
-#if !defined (SHELL) && defined (GWINSZ_IN_SYS_IOCTL)
+#if defined (GWINSZ_IN_SYS_IOCTL)
# include <sys/ioctl.h>
-#endif /* !SHELL && GWINSZ_IN_SYS_IOCTL */
+#endif /* GWINSZ_IN_SYS_IOCTL */
#include "rltty.h"
#include "readline.h"
#if defined (__GO32__)
# include <pc.h>
-# undef HANDLE_SIGNALS
+# if !defined (__DJGPP__)
+# undef HANDLE_SIGNALS
+# endif /* !__DJGPP__ */
#endif /* __GO32__ */
/* Indirect functions to allow apps control over terminal management. */
static int ksrflow;
#endif
-#if !defined (SHELL) && defined (TIOCGWINSZ)
+#if defined (TIOCGWINSZ)
/* Dummy call to force a backgrounded readline to stop before it tries
to get the tty settings. */
static void
if (ioctl (tty, TIOCGWINSZ, &w) == 0)
(void) ioctl (tty, TIOCSWINSZ, &w);
}
-#else /* SHELL || !TIOCGWINSZ */
-# define set_winsize(tty)
-#endif /* SHELL || !TIOCGWINSZ */
+#endif /* TIOCGWINSZ */
#if defined (NEW_TTY_DRIVER)
int tty;
TIOTYPE *tiop;
{
+#if defined (TIOCGWINSZ)
set_winsize (tty);
+#endif
tiop->flags = tiop->lflag = 0;
int meta_flag;
TIOTYPE otio, *tiop;
{
-#if !defined (__GO32__)
+#if !defined (__GO32__) || defined (HAVE_TERMIOS_H)
readline_echoing_p = (otio.sgttyb.sg_flags & ECHO);
/* Copy the original settings to the structure we're going to use for
tiop->ltchars.t_dsuspc = -1; /* C-y */
tiop->ltchars.t_lnextc = -1; /* C-v */
#endif /* TIOCGLTC */
-#endif /* !__GO32__ */
+#endif /* !__GO32__ || HAVE_TERMIOS_H */
}
#else /* !defined (NEW_TTY_DRIVER) */
TIOTYPE *tiop;
{
int ioctl_ret;
+
+#if defined (TIOCGWINSZ)
set_winsize (tty);
+#endif
while (1)
{
rl_prep_terminal (meta_flag)
int meta_flag;
{
-#if !defined (__GO32__)
+#if !defined (__GO32__) || defined (HAVE_TERMIOS_H)
int tty;
TIOTYPE tio;
terminal_prepped = 1;
release_sigint ();
-#endif /* !__GO32__ */
+#endif /* !__GO32__ || HAVE_TERMIOS_H */
}
/* Restore the terminal's normal settings and modes. */
void
rl_deprep_terminal ()
{
-#if !defined (__GO32__)
+#if !defined (__GO32__) || defined (HAVE_TERMIOS_H)
int tty;
if (!terminal_prepped)
terminal_prepped = 0;
release_sigint ();
-#endif /* !__GO32__ */
+#endif /* !__GO32__ || HAVE_TERMIOS_H */
}
\f
/* **************************************************************** */