summaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
authorLuiz Augusto von Dentz <luiz.von.dentz@intel.com>2022-12-09 13:19:17 -0800
committerLuiz Augusto von Dentz <luiz.von.dentz@intel.com>2022-12-09 13:24:21 -0800
commit3d6e4bf14abfe592bb95471eb989a7899febe779 (patch)
tree400ff3d9a02882de92f9c6b6a8c54d3b74e1cfe1 /tools
parente07c1e723ee72ca6c14fda5c636a702fcbb82ae8 (diff)
downloadbluez-3d6e4bf14abfe592bb95471eb989a7899febe779.tar.gz
isotest: Fix not calculating time to wait
The difference of time start and current time may have advanced just enough to add a second leaving start nanoseconds to be bigger.
Diffstat (limited to 'tools')
-rw-r--r--tools/isotest.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/tools/isotest.c b/tools/isotest.c
index dcd087ee1..2b5f164de 100644
--- a/tools/isotest.c
+++ b/tools/isotest.c
@@ -585,6 +585,10 @@ static void send_wait(struct timespec *t_start, uint32_t us)
}
t_diff.tv_sec = t_now.tv_sec - t_start->tv_sec;
+ if (t_start->tv_nsec > t_now.tv_nsec) {
+ t_diff.tv_sec--;
+ t_now.tv_nsec += 1000000000L;
+ }
t_diff.tv_nsec = t_now.tv_nsec - t_start->tv_nsec;
delta_us = us - TS_USEC(&t_diff);