correct broken math in tvfix() for timestamp values over one million

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.2@7468 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
Kevin P. Fleming
2005-12-13 16:06:27 +00:00
parent e69171dc06
commit fb0ffc7784

View File

@@ -613,11 +613,11 @@ static struct timeval tvfix(struct timeval a)
if (a.tv_usec >= ONE_MILLION) {
ast_log(LOG_WARNING, "warning too large timestamp %ld.%ld\n",
a.tv_sec, (long int) a.tv_usec);
a.tv_sec += a.tv_usec % ONE_MILLION;
a.tv_sec += a.tv_usec / ONE_MILLION;
a.tv_usec %= ONE_MILLION;
} else if (a.tv_usec < 0) {
ast_log(LOG_WARNING, "warning negative timestamp %ld.%ld\n",
a.tv_sec, (long int) a.tv_usec);
a.tv_sec, (long int) a.tv_usec);
a.tv_usec = 0;
}
return a;