diff options
author | Colin Walters <walters@verbum.org> | 2004-11-10 06:53:10 +0000 |
---|---|---|
committer | Colin Walters <walters@verbum.org> | 2004-11-10 06:53:10 +0000 |
commit | 255342aa67a3650a5400efed877e51e5d9cc79cc (patch) | |
tree | b4efc2541a6ca6fb5464ee761e1fb6c2d700b089 | |
parent | 935a41a04c3f638134fa905503fc41ddbd18902f (diff) |
2004-11-10 Colin Walters <walters@verbum.org>
* dbus/dbus-spawn.c (check_babysit_events): Handle EINTR,
for extra paranoia.
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | dbus/dbus-spawn.c | 6 |
2 files changed, 10 insertions, 1 deletions
@@ -1,3 +1,8 @@ +2004-11-10 Colin Walters <walters@verbum.org> + + * dbus/dbus-spawn.c (check_babysit_events): Handle EINTR, + for extra paranoia. + 2004-11-09 Colin Walters <walters@verbum.org> * dbus/dbus-string.c (_dbus_string_get_length): New diff --git a/dbus/dbus-spawn.c b/dbus/dbus-spawn.c index 03947cce..b39a75a7 100644 --- a/dbus/dbus-spawn.c +++ b/dbus/dbus-spawn.c @@ -864,7 +864,11 @@ check_babysit_events (pid_t grandchild_pid, pid_t ret; int status; - ret = waitpid (grandchild_pid, &status, WNOHANG); + do + { + ret = waitpid (grandchild_pid, &status, WNOHANG); + } + while (ret < 0 && errno == EINTR); if (ret == 0) { |