]> err.no Git - util-linux/commit
flock: fix hang when parent ignores SIGCHLD
authorMike Frysinger <vapier@gentoo.org>
Mon, 7 Dec 2009 14:18:17 +0000 (15:18 +0100)
committerKarel Zak <kzak@redhat.com>
Mon, 7 Dec 2009 14:23:40 +0000 (15:23 +0100)
commit60cd48bd1425610fbdcdb20249210c7f986cb31d
tree756194fdf2fac5abf447dd5458fdb2de627cb567
parent8179a658a427a96473146655fde72f25f3cc050d
flock: fix hang when parent ignores SIGCHLD

If flock is executed from a process which has set SIGCHLD to SIG_IGN, then
flock will eat cpu and hang indefinitely if given a command to execute.
So before we fork(), make sure to set SIGCHLD handling back to the default
so that the later waitpid() doesn't freak out on us.

[kzak@redhat.com: - add a check for waitpid() return value]

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Karel Zak <kzak@redhat.com>
sys-utils/flock.c