Check that vgdb ptrace actions do not cause a EINTR or whatever
to go out of the select syscall
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@14378 a5019735-40e9-0310-863c-91ae7b9d1cf9
diff --git a/gdbserver_tests/sleepers.c b/gdbserver_tests/sleepers.c
index b74d3ca..e06e0cd 100644
--- a/gdbserver_tests/sleepers.c
+++ b/gdbserver_tests/sleepers.c
@@ -71,7 +71,7 @@
{
int i = 0;
struct spec* s = (struct spec*)v;
-
+ int ret;
fprintf(stderr, "%s ready to sleep and/or burn\n", s->name);
fflush (stderr);
signal_ready();
@@ -81,7 +81,10 @@
if (sleepms > 0 && s->sleep) {
t[s->t].tv_sec = sleepms / 1000;
t[s->t].tv_usec = (sleepms % 1000) * 1000;
- select (0, NULL, NULL, NULL, &t[s->t]);
+ ret = select (0, NULL, NULL, NULL, &t[s->t]);
+ /* We only expect a timeout result from the above. */
+ if (ret != 0)
+ perror("unexpected result from select");
}
if (burn > 0 && s->burn)
do_burn();