xref: /csrg-svn/usr.bin/window/wwchild.c (revision 13962)
113921Sedward #ifndef lint
2*13962Sedward static	char *sccsid = "@(#)wwchild.c	1.2 83/07/17";
313921Sedward #endif
413921Sedward 
513921Sedward #include "ww.h"
613921Sedward #include <sys/wait.h>
713921Sedward 
813921Sedward wwchild()
913921Sedward {
1013921Sedward 	register struct ww *wp;
1113921Sedward 	union wait w;
1213921Sedward 	int pid;
1313921Sedward 
1413921Sedward 	while ((pid = wait3(&w, WNOHANG|WUNTRACED, 0)) > 0) {
15*13962Sedward 		for (wp = wwhead; wp; wp = wp->ww_next) {
1613921Sedward 			if (wp->ww_pid == pid) {
1713921Sedward 				wp->ww_state = WW_DEAD;
18*13962Sedward 				(void) wwprintf(curwin,
19*13962Sedward 					"\r\n%d: Died\r\n", pid);
2013921Sedward 				break;
2113921Sedward 			}
2213921Sedward 		}
23*13962Sedward 		if (wp == 0)
24*13962Sedward 			wwprintf(curwin, "\r\n%d: No such child\r\n", pid);
2513921Sedward 	}
2613921Sedward }
27