Vin Shelton writes:
After thinking about this for awhile, it dawned on me that the
problem
is not with setsid() per se, but rather with the sequence of events
_following_ the setsid() call. That is, setsid() causes some of the
ensuing ioctl() (or similar) calls that set up the pty to fail.
I think I have verified this behavior - I restored the old sysdep.c
module and moved the disconnect_controlling_terminal() call [which
calls setsid()] from right after the fork() to just before the exec()
call and M-x shell works on Cygwin as it always has on linux.
I will endeavor to create a STC for Cygwin that includes all the code
involved in setting up the terminal so we can experiment with moving
the setsid() call between the beginning and the end of the function.
I confirm that this works, and eliminates the complaints from bash
about terminal control group and job control.
Thanks again for you help!
Next step -- back to working on 64-bit xemacs. . .
ht
--
Henry S. Thompson, School of Informatics, University of Edinburgh
10 Crichton Street, Edinburgh EH8 9AB, SCOTLAND -- (44) 131 650-4440
Fax: (44) 131 650-4587, e-mail: ht(a)inf.ed.ac.uk
URL:
http://www.ltg.ed.ac.uk/~ht/
[mail from me _always_ has a .sig like this -- mail without it is forged spam]
_______________________________________________
XEmacs-Beta mailing list
XEmacs-Beta(a)xemacs.org
http://lists.xemacs.org/mailman/listinfo/xemacs-beta