weston: don't hang in wait()

Pausing weston (with ^Z in the shell) and putting it in the background
made it hang.
This commit is contained in:
Bill Spitzak 2012-03-17 15:22:03 -07:00 committed by Kristian Høgsberg
parent d273e28567
commit 027b962d8c

View File

@ -59,7 +59,10 @@ sigchld_handler(int signal_number, void *data)
int status;
pid_t pid;
pid = wait(&status);
pid = waitpid(-1, &status, WNOHANG);
if (!pid)
return 1;
wl_list_for_each(p, &child_process_list, link) {
if (p->pid == pid)
break;