if (child == 0 || (child == -1 && errno == ECHILD)) break;
if (child == -1) syscallerror("wait for child process (in sigchld handler)");
for (fd=0; fd<fdsetupsize && fdsetup[fd].catpid != child; fd++);
if (child == 0 || (child == -1 && errno == ECHILD)) break;
if (child == -1) syscallerror("wait for child process (in sigchld handler)");
for (fd=0; fd<fdsetupsize && fdsetup[fd].catpid != child; fd++);