aboutsummaryrefslogtreecommitdiff
path: root/readline/terminal.c
diff options
context:
space:
mode:
authorPatrick Palka <patrick@parcs.ath.cx>2015-07-25 15:41:05 -0400
committerPatrick Palka <patrick@parcs.ath.cx>2015-07-25 15:57:00 -0400
commit5836a818eccb180d75c92ce4c861abb6fe8dec23 (patch)
tree624044ca5df5a6c192e47933a735ab4fe9aaea71 /readline/terminal.c
parentb8cc7b2e9afab37eb9a7cff0d3ae4ebbcf7d494f (diff)
downloadgdb-5836a818eccb180d75c92ce4c861abb6fe8dec23.zip
gdb-5836a818eccb180d75c92ce4c861abb6fe8dec23.tar.gz
gdb-5836a818eccb180d75c92ce4c861abb6fe8dec23.tar.bz2
Revert "Sync readline/ to version 7.0 alpha"
This reverts commit b558ff043d41ba8d17a82f5f9ae5f9dade66160e. This reverts commit 4a11f2065906976675808364ddbd1c0f77eea41f. The initial import commit failed to retain local changes made to readline's configure.in (and the commit message erroneously stated that there were no local changes that needed to be reapplied). Also the import caused a couple of build errors and a scattering of testsuite regressions throughout many arches. It's probably better to start over with this import, hopefully more carefully next time.
Diffstat (limited to 'readline/terminal.c')
-rw-r--r--readline/terminal.c64
1 files changed, 21 insertions, 43 deletions
diff --git a/readline/terminal.c b/readline/terminal.c
index 495b87a..8094186 100644
--- a/readline/terminal.c
+++ b/readline/terminal.c
@@ -51,14 +51,15 @@
/* System-specific feature definitions and include files. */
#include "rldefs.h"
+#if defined (GWINSZ_IN_SYS_IOCTL) && !defined (TIOCGWINSZ)
+# include <sys/ioctl.h>
+#endif /* GWINSZ_IN_SYS_IOCTL && !TIOCGWINSZ */
+
#ifdef __MSDOS__
-# include <pc.h>
+# include <pc.h>
#endif
#include "rltty.h"
-#if defined (HAVE_SYS_IOCTL_H)
-# include <sys/ioctl.h> /* include for declaration of ioctl */
-#endif
#include "tcap.h"
/* Some standard library routines. */
@@ -80,14 +81,13 @@ static void _win_get_screensize PARAMS((int *, int *));
static void _emx_get_screensize PARAMS((int *, int *));
#endif
-/* If the calling application sets this to a non-zero value, readline will
- use the $LINES and $COLUMNS environment variables to set its idea of the
- window size before interrogating the kernel. */
-int rl_prefer_env_winsize = 0;
+#define CUSTOM_REDISPLAY_FUNC() (rl_redisplay_function != rl_redisplay)
+#define CUSTOM_INPUT_FUNC() (rl_getc_function != rl_getc)
-/* If this is non-zero, readline will set LINES and COLUMNS in the
- environment when it handles SIGWINCH. */
-int rl_change_environment = 1;
+/* If the calling application sets this to a non-zero value, readline will
+ use the $LINES and $COLUMNS environment variables to set its idea of the
+ window size before interrogating the kernel. */
+int rl_prefer_env_winsize = 0;
/* **************************************************************** */
/* */
@@ -98,7 +98,7 @@ int rl_change_environment = 1;
#ifndef __MSDOS__
static char *term_buffer = (char *)NULL;
static char *term_string_buffer = (char *)NULL;
-#endif
+#endif /* !__MSDOS__ */
static int tcap_initialized;
@@ -308,8 +308,7 @@ _rl_get_screen_size (tty, ignore_env)
/* If we're being compiled as part of bash, set the environment
variables $LINES and $COLUMNS to new values. Otherwise, just
do a pair of putenv () or setenv () calls. */
- if (rl_change_environment)
- sh_set_lines_and_columns (_rl_screenheight, _rl_screenwidth);
+ sh_set_lines_and_columns (_rl_screenheight, _rl_screenwidth);
if (_rl_term_autowrap == 0)
_rl_screenwidth--;
@@ -359,13 +358,7 @@ rl_reset_screen_size ()
{
_rl_get_screen_size (fileno (rl_instream), 0);
}
-
-void
-_rl_sigwinch_resize_terminal ()
-{
- _rl_get_screen_size (fileno (rl_instream), 1);
-}
-
+
void
rl_resize_terminal ()
{
@@ -567,6 +560,7 @@ _rl_init_terminal_io (terminal_name)
term_has_meta = tgetflag ("km") != 0;
if (term_has_meta == 0)
_rl_term_mm = _rl_term_mo = (char *)NULL;
+
#endif /* !__MSDOS__ */
/* Attempt to find and bind the arrow keys. Do not override already
@@ -700,16 +694,17 @@ rl_ding ()
default:
break;
case VISIBLE_BELL:
+#ifdef __MSDOS__
+ ScreenVisualBell ();
+ break;
+#else
if (_rl_visible_bell)
{
-#ifdef __DJGPP__
- ScreenVisualBell ();
-#else
tputs (_rl_visible_bell, 1, _rl_output_character_function);
-#endif
break;
}
/* FALLTHROUGH */
+#endif
case AUDIBLE_BELL:
fprintf (stderr, "\007");
fflush (stderr);
@@ -726,29 +721,12 @@ rl_ding ()
/* */
/* **************************************************************** */
-static int enabled_meta = 0; /* flag indicating we enabled meta mode */
-
void
_rl_enable_meta_key ()
{
#if !defined (__DJGPP__)
if (term_has_meta && _rl_term_mm)
- {
- tputs (_rl_term_mm, 1, _rl_output_character_function);
- enabled_meta = 1;
- }
-#endif
-}
-
-void
-_rl_disable_meta_key ()
-{
-#if !defined (__DJGPP__)
- if (term_has_meta && _rl_term_mo && enabled_meta)
- {
- tputs (_rl_term_mo, 1, _rl_output_character_function);
- enabled_meta = 0;
- }
+ tputs (_rl_term_mm, 1, _rl_output_character_function);
#endif
}