From: Aaron Taylor Date: Mon, 7 Oct 2019 11:19:28 +0000 (-0700) Subject: Updated timeval_diff() to calculate a full difference. X-Git-Url: http://git.subgeniuskitty.com/icmpmonitor/.git/commitdiff_plain/e69088a2edb284f748570158097465e4c879e13c Updated timeval_diff() to calculate a full difference. --- diff --git a/icmpmonitor.c b/icmpmonitor.c index efa6d71..6bc2006 100644 --- a/icmpmonitor.c +++ b/icmpmonitor.c @@ -100,12 +100,16 @@ checksum(const uint16_t * data) } /* - * Calculate difference between two timeval structs to within one second. + * Calculate difference (a-b) between two timeval structs. */ void timeval_diff(struct timeval * a, const struct timeval * b) { - assert(a->tv_sec >= b->tv_sec); + if (a->tv_usec < b->tv_usec) { + a->tv_sec--; + a->tv_usec += 1000000; + } + a->tv_usec -= b->tv_usec; a->tv_sec -= b->tv_sec; }