[asterisk-commits] file: trunk r42261 - in /trunk: ./ main/cdr.c

asterisk-commits at lists.digium.com asterisk-commits at lists.digium.com
Thu Sep 7 09:33:02 MST 2006


Author: file
Date: Thu Sep  7 11:33:02 2006
New Revision: 42261

URL: http://svn.digium.com/view/asterisk?rev=42261&view=rev
Log:
Merged revisions 42260 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r42260 | file | 2006-09-07 12:30:44 -0400 (Thu, 07 Sep 2006) | 2 lines

Let's use the same thing we use in other places to calculate our time for ast_cond_timedwait (issue #7697 reported by bn999)

........

Modified:
    trunk/   (props changed)
    trunk/main/cdr.c

Propchange: trunk/
------------------------------------------------------------------------------
Binary property 'branch-1.2-merged' - no diff available.

Modified: trunk/main/cdr.c
URL: http://svn.digium.com/view/asterisk/trunk/main/cdr.c?rev=42261&r1=42260&r2=42261&view=diff
==============================================================================
--- trunk/main/cdr.c (original)
+++ trunk/main/cdr.c Thu Sep  7 11:33:02 2006
@@ -945,13 +945,14 @@
 	int numevents = 0;
 
 	for(;;) {
-		struct timeval now = ast_tvnow();
+		struct timeval now;
 		schedms = ast_sched_wait(sched);
 		/* this shouldn't happen, but provide a 1 second default just in case */
 		if (schedms <= 0)
 			schedms = 1000;
-		timeout.tv_sec = now.tv_sec + (schedms / 1000);
-		timeout.tv_nsec = (now.tv_usec * 1000) + ((schedms % 1000) * 1000);
+		now = ast_tvadd(ast_tvnow(), ast_samp2tv(schedms, 1000));
+		timeout.tv_sec = now.tv_sec;
+		timeout.tv_nsec = now.tv_usec * 1000;
 		/* prevent stuff from clobbering cdr_pending_cond, then wait on signals sent to it until the timeout expires */
 		ast_mutex_lock(&cdr_pending_lock);
 		ast_cond_timedwait(&cdr_pending_cond, &cdr_pending_lock, &timeout);



More information about the asterisk-commits mailing list