This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: [patch] Avoid readline conflicts in pexpect
- From: Carlos O'Donell <carlos at redhat dot com>
- To: DJ Delorie <dj at redhat dot com>, libc-alpha at sourceware dot org
- Date: Wed, 13 Feb 2019 15:44:57 -0500
- Subject: Re: [patch] Avoid readline conflicts in pexpect
- References: <xnlg2qcdcx.fsf@greed.delorie.com>
On 2/8/19 2:02 PM, DJ Delorie wrote:
> In some cases, sensitive to readline version and the user's
> environment, gdb might emit escape codes while run under python's
> pexpect (i.e. testing pretty printers). This patch, suggested
> by Jan, helps isolate the test from the user's environment.
>
> Tested on RHEL 7 x86_64 with DTS 7 and EPEL, which is one
> magic combination of components that triggers this bug.
>
> 2019-02-08 Jan Kratochvil <jan.kratochvil@redhat.com>
>
> * scripts/test_printers_common.py: Set TERM to a known harmless
> value.
OK for master.
Reviewed-by: Carlos O'Donell <carlos@redhat.com>
> diff --git a/scripts/test_printers_common.py b/scripts/test_printers_common.py
> index dada6aadde..b2bd4ba1cc 100644
> --- a/scripts/test_printers_common.py
> +++ b/scripts/test_printers_common.py
> @@ -60,6 +60,10 @@ TIMEOUTFACTOR = os.environ.get('TIMEOUTFACTOR')
> if TIMEOUTFACTOR:
> timeout = int(TIMEOUTFACTOR)
>
> +# Otherwise GDB is run in interactive mode and readline may send escape
> +# sequences confusing output for pexpect.
> +os.environ["TERM"]="dumb"
> +
> try:
> # Check the gdb version.
> version_cmd = '{0} --version'.format(gdb_invocation, timeout=timeout)
>
--
Cheers,
Carlos.