summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorColin Walters <walters@verbum.org>2004-11-10 06:53:10 +0000
committerColin Walters <walters@verbum.org>2004-11-10 06:53:10 +0000
commit255342aa67a3650a5400efed877e51e5d9cc79cc (patch)
treeb4efc2541a6ca6fb5464ee761e1fb6c2d700b089
parent935a41a04c3f638134fa905503fc41ddbd18902f (diff)
2004-11-10 Colin Walters <walters@verbum.org>
* dbus/dbus-spawn.c (check_babysit_events): Handle EINTR, for extra paranoia.
-rw-r--r--ChangeLog5
-rw-r--r--dbus/dbus-spawn.c6
2 files changed, 10 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 118fa6f2..9c7cadbb 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -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)
{