Georg Baum wrote:
> As I understand it, it is not safe to assume that the child process was
> executed successfully if errno is ECHILD. 

Yes, you're right.

> The siginfo struct that can be 
> obtained with sigwaitinfo() has probably the needed information.
[...]
> If we had the value of si_code, we could ignore the error for CLD_EXITED.
> But I don't know if/how/when one could call sigwaitinfo() to obtain the
> desired information.

I think instead of working around the error message we rather should 
investigate why the error occurs suddenly.
After some more web consultation I am almost sure that this has to do with 
Angus' introduction of SIGCHLD. Obviously SIGCHLD makes pclose() fail.
As I understand it, we need to block SIGCHLD before pclose() and unblock it 
afterwards. I read Angus elaborations in forkedcontr.C, but I still don't 
understand how to do the (un)blocking in filetools.C. 
Angus, Georg, any ideas?

Jürgen.

Reply via email to