diff options
author | Eli Zaretskii <eliz@gnu.org> | 2015-01-22 20:23:12 +0200 |
---|---|---|
committer | Eli Zaretskii <eliz@gnu.org> | 2015-01-22 20:24:57 +0200 |
commit | 6b8a872ff1038e2b8618ea33bb1113b78f39976d (patch) | |
tree | b5def1741a369b024c9c7d81d3860452cb27963b /gdb/tui | |
parent | 4b62a76e0cd716407859077467fddbb66b715a43 (diff) | |
download | gdb-6b8a872ff1038e2b8618ea33bb1113b78f39976d.zip gdb-6b8a872ff1038e2b8618ea33bb1113b78f39976d.tar.gz gdb-6b8a872ff1038e2b8618ea33bb1113b78f39976d.tar.bz2 |
Fix MinGW TUI build
gdb/
2015-01-22 Eli Zaretskii <eliz@gnu.org>
* gdb/tui/tui.c (tui_enable) [__MINGW32__]: If the call to 'newterm'
fails with the 1st arg NULL, try again with "unknown". Don't test
the "cup" capability: it isn't supported by the Windows port of
ncurses, but the Windows console driver is still capable of
supporting TUI.
Diffstat (limited to 'gdb/tui')
-rw-r--r-- | gdb/tui/tui.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/gdb/tui/tui.c b/gdb/tui/tui.c index 00e505d..92463df 100644 --- a/gdb/tui/tui.c +++ b/gdb/tui/tui.c @@ -425,6 +425,12 @@ tui_enable (void) error (_("Cannot enable the TUI when output is not a terminal")); s = newterm (NULL, stdout, stdin); +#ifdef __MINGW32__ + /* The MinGW port of ncurses requires $TERM to be unset in order + to activate the Windows console driver. */ + if (s == NULL) + s = newterm ("unknown", stdout, stdin); +#endif if (s == NULL) { error (_("Cannot enable the TUI: error opening terminal [TERM=%s]"), @@ -432,7 +438,9 @@ tui_enable (void) } w = stdscr; - /* Check required terminal capabilities. */ + /* Check required terminal capabilities. The MinGW port of + ncurses does have them, but doesn't expose them through "cup". */ +#ifndef __MINGW32__ cap = tigetstr ("cup"); if (cap == NULL || cap == (char *) -1 || *cap == '\0') { @@ -442,6 +450,7 @@ tui_enable (void) "terminal doesn't support cursor addressing [TERM=%s]"), gdb_getenv_term ()); } +#endif cbreak (); noecho (); |