Hi,
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?
Werner
--
Dr. Werner Fink <[EMAIL PROTECTED]>
SuSE LINUX Products GmbH, Maxfeldstrasse 5, Nuernberg, Germany
GF: Markus Rex, HRB 16746 (AG Nuernberg)
phone: +49-911-740-53-0, fax: +49-911-3206727, www.opensuse.org
------------------------------------------------------------------
"Having a smoking section in a restaurant is like having
a peeing section in a swimming pool." -- Edward Burr
_______________________________________________
ast-developers mailing list
[email protected]
https://mailman.research.att.com/mailman/listinfo/ast-developers