aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gdb/ChangeLog5
-rw-r--r--gdb/procfs.c9
2 files changed, 11 insertions, 3 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index a59820d..6206f63 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,8 @@
+Tue Feb 1 22:13:25 1994 Peter Schauer (pes@regent.e-technik.tu-muenchen.de)
+
+ * procfs.c (wait_fd): Handle EINTR error return from PIOCWSTOP ioctl
+ by restarting the ioctl.
+
Tue Feb 1 16:16:25 1994 Jim Kingdon (kingdon@lioth.cygnus.com)
* target.h (target_wait): Add comment about calling
diff --git a/gdb/procfs.c b/gdb/procfs.c
index 0d7aee8..86d7bb7 100644
--- a/gdb/procfs.c
+++ b/gdb/procfs.c
@@ -579,10 +579,13 @@ wait_fd ()
#else
pi = current_procinfo;
- if (ioctl (pi->fd, PIOCWSTOP, &pi->prstatus) < 0)
+ while (ioctl (pi->fd, PIOCWSTOP, &pi->prstatus) < 0)
{
- print_sys_errmsg (pi->pathname, errno);
- error ("PIOCWSTOP failed");
+ if (errno != EINTR)
+ {
+ print_sys_errmsg (pi->pathname, errno);
+ error ("PIOCWSTOP failed");
+ }
}
pi->had_event = 1;
#endif