On Wed, Nov 21, 2012 at 03:15:43PM -0500, Ariel Barria wrote:
Hi.
well, I'm not sure that this patch have the behavior that is it hope. You have the
word.
But when monitor_quit is call and the process not exists, this remains in loop and not
allow signal.
I try it with Monitor Task and nothing.
I had to reboot
Thanks a lot, Ariel, this is quite a bad bug. The concept is good, but
can you change the patch a little?
instead of:
if (error != EINTR) {
kill()
if (error == ESRCH || error == ECHILD) {
killed = true;
}
}
I would use:
if (error == ECHILD) {
/* Skip this process */
killed = true;
} else if (error != EINTR) {
/* Keep the block with the kill function around */
}
Also, are you sure about the ESRCH error code? The waitpid man page only
mentions ECHILD..