Juergen Spitzmueller wrote: > errno is ECHILD (no child processes) For what it's worth, I found this statement in popen(3C):
The signal handler for SIGCHLD should be set to default when using popen(). If the process has established a signal handler for SIGCHLD, it will be called when the command ter- minates. If the signal handler or another thread in the same process issues a wait(2) call, it will interfere with the return value of pclose(). If the process's signal handler for SIGCHLD has been set to ignore the signal, pclose() will fail and errno will be set to ECHILD. http://ist-socrates.berkeley.edu/cgi-bin/man.cgi?section=3C&topic=popen Angus, since you did some SIGCHLD work recently: could it be that this bug is related? Regards, Jürgen.