[PATCH] Disable bracketed paste mode in GDB tests

Tom Tromey
2021-01-18T19:20:10Z

I have a patch to import GNU readline 8.1 into GDB. However, when
running the tests, there were a number of failures due to "bracketed
paste mode". This is a terminal feature that readline 8.1 enables by
default.

The simplest way to work around this was to always make a ".inputrc"
for GDB tests that will tell readline to disable brackted paste mode.

gdb/testsuite/ChangeLog
2021-01-18 Tom Tromey <tom@tromey.com>

* lib/gdb.exp (default_gdb_init): Set INPUTRC to a cached file.
---
gdb/testsuite/ChangeLog | 4 ++++
gdb/testsuite/lib/gdb.exp | 13 ++++++-------
2 files changed, 10 insertions(+), 7 deletions(-)

diff --git a/gdb/testsuite/lib/gdb.exp b/gdb/testsuite/lib/gdb.exp
index ae24fe2f49c..7b0420d8f00 100644
--- a/gdb/testsuite/lib/gdb.exp
+++ b/gdb/testsuite/lib/gdb.exp
@@ -5265,13 +5265,12 @@ proc default_gdb_init { test_file_name } {
setenv LC_CTYPE C
setenv LANG C

- # Don't let a .inputrc file or an existing setting of INPUTRC mess up
- # the test results. Even if /dev/null doesn't exist on the particular
- # platform, the readline library will use the default setting just by
- # failing to open the file. OTOH, opening /dev/null successfully will
- # also result in the default settings being used since nothing will be
- # read from this file.
- setenv INPUTRC "/dev/null"
+ # Don't let a .inputrc file or an existing setting of INPUTRC mess
+ # up the test results. Certain tests (style tests and TUI tests)
+ # want to set the terminal to a non-"dumb" value, and for those we
+ # want to disable bracketed paste mode. It seems harmless to
+ # simply always do this.
+ setenv INPUTRC [cached_file inputrc "set enable-bracketed-paste off"]

# This disables style output, which would interfere with many
# tests.
--
2.26.2