When sending a sequence, we need to resend the same frame when poll() returns.

Fixed that to be a valid data source e.g. for ptx cansequence.
pull/7/head
Oliver Hartkopp 2010-02-26 08:38:47 +00:00
parent e089e5d0ba
commit afa14f102d
1 changed files with 3 additions and 1 deletions

View File

@ -341,6 +341,7 @@ int main(int argc, char **argv)
fprint_canframe(stdout, &frame, "\n", 1); fprint_canframe(stdout, &frame, "\n", 1);
} }
resend:
nbytes = write(s, &frame, sizeof(struct can_frame)); nbytes = write(s, &frame, sizeof(struct can_frame));
if (nbytes < 0) { if (nbytes < 0) {
if (errno != ENOBUFS) { if (errno != ENOBUFS) {
@ -356,7 +357,8 @@ int main(int argc, char **argv)
if (poll(&fds, 1, polltimeout) < 0) { if (poll(&fds, 1, polltimeout) < 0) {
perror("poll"); perror("poll");
return 1; return 1;
} } else
goto resend;
} else } else
enobufs_count++; enobufs_count++;