Hello Ralph,

Ralph Corderoy <[email protected]> wrote:
 |>> An strace(1) shows read(2)s of one byte consuming the first line,
 |>> including the LF.  ioctl(2)s and signal handling are then done.  The
 |>> next read of stdin sees Ctrl-D, the terminal's EOF character, and no
 |>> more reads are attempted.
 |
 |The ioctl are
 |
 |    ioctl(0, TCSETSF, {B38400 opost isig icanon echo ...}) = 0
 |    ioctl(0, TCGETS, {B38400 opost isig icanon echo ...}) = 0
 |    ioctl(0, TCSETSF, {B38400 opost isig -icanon -echo ...}) = 0
 |
 |and I think TCSETSF is the same as tcsetattr(0, TCSAFLUSH, ...) and that
 |"discard pending input" -- tty_ioctl(4).  Note sure why the EOF follows,
 |but it's a clue.

Yes, you are absolutely right, this was the problem.  It was
a thoughtless and absolutely needless commit of mine back in last
October, whatever.  (It really was cutting the net, standing up to
go and clean the teapot (music still running) and getting the
thought what it could be.  But i was too tired to commit on
master, rebase etc., so i decided to wait until the morning.)
But many thanks for looking into it!

It now could be left to the experienced to find the function
_ncl_term_mode() in the disassembly and change the single byte
that causes the problem, but i think i'll release a bugfix - also
because it fixes Maildir on BSD etc.
Thanks!  And Ciao,

--steffen

------------------------------------------------------------------------------
Transform Data into Opportunity.
Accelerate data analysis in your applications with
Intel Data Analytics Acceleration Library.
Click to learn more.
http://pubads.g.doubleclick.net/gampad/clk?id=278785351&iu=/4140
__________________________________
[email protected]

Reply via email to