aboutsummaryrefslogtreecommitdiff
path: root/gdb/procfs.c
diff options
context:
space:
mode:
authorJim Kingdon <jkingdon@engr.sgi.com>1994-02-01 21:46:17 +0000
committerJim Kingdon <jkingdon@engr.sgi.com>1994-02-01 21:46:17 +0000
commit8afd05c039bd01e263ee1c96dd80213d8dffd971 (patch)
tree7276c21864d46918881b88312d2e7cb52d5e8762 /gdb/procfs.c
parent10b9bb562ec1905685862850071c227c7289ccd3 (diff)
downloadgdb-8afd05c039bd01e263ee1c96dd80213d8dffd971.zip
gdb-8afd05c039bd01e263ee1c96dd80213d8dffd971.tar.gz
gdb-8afd05c039bd01e263ee1c96dd80213d8dffd971.tar.bz2
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.
Diffstat (limited to 'gdb/procfs.c')
-rw-r--r--gdb/procfs.c9
1 files changed, 6 insertions, 3 deletions
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