Folkert van Heusden wrote: > After a waitpid() in the signal handler, all is good. > Never realised that you could do that in a signal handler! Maybe you "can't". That is, if you strictly follow the C standard. There are very few things you are allowed to do inside a signal handler. POSIX relaxes the constraints considerably, and it seems waitpid is indeed allowed.