libthread: avoid calling thread waiting for fork/execed process to finish if we dont have to

we do not need to wait for fork/execed program to finish when
not collecting waitmsg. this reduces the number of rio
processes hanging arround for each window shell just waiting
for it to terminate and then dumping the waitmsg.
This commit is contained in:
cinap_lenrek 2013-12-06 05:03:35 +01:00
parent f6887b0a3c
commit 6e1c833585

View file

@ -121,9 +121,10 @@ efork(Execargs *e)
int
_schedexec(Execargs *e)
{
int pid;
int pid, flag;
switch(pid = rfork(RFREND|RFNOTEG|RFFDG|RFMEM|RFPROC)){
flag = (_threadwaitchan == nil) ? RFNOWAIT : 0;
switch(pid = rfork(RFREND|RFNOTEG|RFFDG|RFMEM|RFPROC|flag)){
case 0:
efork(e);
default: