discuss-gnustep
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

why does NSTask setpgrp on sub processes?


From: Derek Zhou
Subject: why does NSTask setpgrp on sub processes?
Date: Tue, 19 Jan 2010 00:59:28 -0800
User-agent: KMail/1.12.4 (Linux/2.6.31; KDE/4.3.4; i686; ; )

hi all,
it seems NSTask setpgrp after the fork:
...
      /*                                                                        
       * Make sure task is run in it's own process group.                       
       */
#ifdef     HAVE_SETPGRP
#ifdef  SETPGRP_VOID
      setpgrp();
#else
      setpgrp(getpid(), getpid());
#endif

Why is it doing that? Is it simply what Apple is doing?
I am trying to call $EDITOR (normally a TTY process) in my program which has no 
gui either. 
However I suspect the setpgrp mess up the terminal setting so the EDITOR does 
not have the tty. I can tcsetpgrp from my process but then my process is 
stopped. Can we do this:
0, just don't setpgrp, or
1, don't setpgrp if the parent's stdin is a tty and not setting the child's 
stdin, or
2, add an option not to setpgrp. (it is an additional API though)
I think 1 is the safest route and I can easily make a patch. I can do either 0 
or 1 if that's what people want.

Derek   




reply via email to

[Prev in Thread] Current Thread [Next in Thread]