thanks
we have reproduced the problem on our suse box
the locked tty is done by the "echo" half of the pipeline
which has exited without giving up the tty
On Wed, 21 Nov 2007 18:49:49 +0100 Dr. Werner Fink wrote:
> starting a ksh like
> /suse/werner> PATH=/usr/local/bin:/usr/bin:/bin:. ksh
> [EMAIL PROTECTED]:/suse/werner> ksh
> [EMAIL PROTECTED]:/suse/werner> echo | les
> les: not found [No such file or directory]
> [EMAIL PROTECTED]:/suse/werner>
> [endless loop in tty_set() of src/cmd/ksh93/edit/edit.c]
> after sending a SIGSEGV I've identified the loop
> while(tcsetattr(fd, action, tty) == SYSERR)
> {
> if(errno !=EINTR)
> return(SYSERR);
> errno = 0;
> }
> as cause of the problem. A simliar loop is found in
> tty_get() in the same file src/cmd/ksh93/edit/edit.c
> It looks like the first ksh has locked the tty and the second
> ksh receives an EINTR for every tcsetattr() which results
> into an endless loop.
> IMHO the first ksh should not lock the tty in that way,
> shouldn't it?
_______________________________________________
ast-developers mailing list
[email protected]
https://mailman.research.att.com/mailman/listinfo/ast-developers