[asterisk-commits] tilghman: trunk r179469 - in /trunk: ./ main/app.c

SVN commits to the Asterisk project asterisk-commits at lists.digium.com
Mon Mar 2 17:10:22 CST 2009


Author: tilghman
Date: Mon Mar  2 17:10:18 2009
New Revision: 179469

URL: http://svn.digium.com/svn-view/asterisk?view=rev&rev=179469
Log:
Merged revisions 179468 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  r179468 | tilghman | 2009-03-02 17:09:01 -0600 (Mon, 02 Mar 2009) | 10 lines
  
  When ending a recording with silence detection, remember to reduce the duration.
  The end of the recording is correspondingly trimmed, but the duration was not
  trimmed by the number of seconds trimmed, so the saved duration was necessarily
  longer than the actual soundfile duration.
  (closes issue #14406)
   Reported by: sasargen
   Patches: 
         20090226__bug14406.diff.txt uploaded by tilghman (license 14)
   Tested by: sasargen
........

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

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

Modified: trunk/main/app.c
URL: http://svn.digium.com/svn-view/asterisk/trunk/main/app.c?view=diff&rev=179469&r1=179468&r2=179469
==============================================================================
--- trunk/main/app.c (original)
+++ trunk/main/app.c Mon Mar  2 17:10:18 2009
@@ -840,8 +840,16 @@
 			 * off the recording.  However, if we ended with '#', we don't want
 			 * to trim ANY part of the recording.
 			 */
-			if (res > 0 && totalsilence)
+			if (res > 0 && totalsilence) {
 				ast_stream_rewind(others[x], totalsilence - 200);
+				/* Reduce duration by a corresponding amount */
+				if (x == 0 && *duration) {
+					*duration -= (totalsilence - 200) / 1000;
+					if (*duration < 0) {
+						*duration = 0;
+					}
+				}
+			}
 			ast_truncstream(others[x]);
 			ast_closestream(others[x]);
 		}




More information about the asterisk-commits mailing list