From c31621bbecc69191d4065d1250f4e5aff7104610 Mon Sep 17 00:00:00 2001
From: Mark Spencer <markster@digium.com>
Date: Wed, 5 Jan 2005 22:29:30 +0000
Subject: [PATCH] Calculate tvdiff properly (avoid off-by-one)

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@4682 65c4cc65-6c06-0410-ace0-fbb531ad65f3
---
 channel.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/channel.c b/channel.c
index 467fbc9e5f..efd6486a17 100755
--- a/channel.c
+++ b/channel.c
@@ -2546,7 +2546,11 @@ int ast_setstate(struct ast_channel *chan, int state)
 
 static long tvdiff(struct timeval *now, struct timeval *then) 
 {
+#if 0
 	return (((now->tv_sec * 1000) + now->tv_usec / 1000) - ((then->tv_sec * 1000) + then->tv_usec / 1000));
+#else
+	return (now->tv_sec - then->tv_sec) * 1000 + (now->tv_usec - then->tv_usec) / 1000;	
+#endif
 }
 
 struct ast_channel *ast_bridged_channel(struct ast_channel *chan)
-- 
GitLab