[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: dejagnu-1.6.3 make check failures
From: |
Martin Cermak |
Subject: |
Re: dejagnu-1.6.3 make check failures |
Date: |
Wed, 22 Sep 2021 15:10:28 +0200 |
User-agent: |
NeoMutt/20180716 |
On Tue 2021-09-21 21:30 , Jacob Bachmeyer wrote:
> Martin Cermak wrote:
> > Hi folks,
> >
> > running make check for dejagnu-1.6.3 on Fedora 34. I'm seeing
> > test failures per attached runtest sum and log files. I'm
> > wondering whether these issues are known. Looking at the open
> > bug list, I don't seem to see a matching one.
> >
> > Thoughts?
>
> I was wondering how long it would take for Fedora to pick up the 1.6.3
> release...
>
> Back to the point, this is actually a bug in Expect 5.45.4 (and possibly
> other versions) that is tracked as bug#49078 in the GNU debbugs instance
> after the LinuxFromScratch people initially reported it: Expect is
> incorrectly treating a line exactly 64 bytes long as EOF.
>
> I have been investigating the issue but have not yet tracked down the exact
> cause or exactly where to go to push a fix upstream. Does Fedora have
> someone sufficiently familiar with the Expect codebase and Tcl community to
> get this fixed?
>
> My notes so far:
>
> An input line exactly 64 bytes long (64 bytes followed by newline) causes
> exp_get_next_event in exp_event.c to return -9 (EXP_DATA_NEW) which
> exp_interpreter in exp_main_sub.c incorrectly treats as EOF. This causes
> Expect to exit, but somehow leaves the newline in the terminal buffer. If
> Expect is run under GDB, the stray newline will be read and processed by
> GDB, typically causing various mayhem; if GDB is attached from another
> terminal, the stray newline will be read and processed by the shell after
> Expect exits.
> The issue does not occur if Expect's input is a pipe, only when the child
> Expect is taking input from a pty. The input does not need to arrive in a
> single burst and is unaffected by the basic *nix line editing; the issue
> occurs when a line 64 bytes long is sent to the child Expect. This can also
> be observed using ssh and/or xterm, as long as the Expect process is using a
> pty.
Thank-you for the analysis, Jacob. Not sure about a community, but
I've tried to spread the word.
Martin