[Freeswitch-svn] [commit] r9151 - freeswitch/trunk/src

Freeswitch SVN anthm at freeswitch.org
Wed Jul 23 19:24:19 EDT 2008


Author: anthm
Date: Wed Jul 23 19:24:18 2008
New Revision: 9151

Modified:
   freeswitch/trunk/src/switch_ivr_play_say.c

Log:
tweak

Modified: freeswitch/trunk/src/switch_ivr_play_say.c
==============================================================================
--- freeswitch/trunk/src/switch_ivr_play_say.c	(original)
+++ freeswitch/trunk/src/switch_ivr_play_say.c	Wed Jul 23 19:24:18 2008
@@ -1012,15 +1012,33 @@
 			do_speed = 0;
 		} else if (fh->sp_audio_buffer && (eof || (switch_buffer_inuse(fh->sp_audio_buffer) > (switch_size_t) (framelen)))) {
 			if (!(bread = switch_buffer_read(fh->sp_audio_buffer, abuf, framelen))) {
-				break; 
+				if (eof) {
+					continue;
+				} else {
+					break; 
+				}
 			}
-			olen = asis ? bread : bread / 2;
+
+			if (bread < framelen) {
+				memset(abuf + bread, 0, framelen - bread);
+			}
+
+			olen = asis ? framelen : ilen;
 			do_speed = 0;
 		} else if (fh->audio_buffer && (eof || (switch_buffer_inuse(fh->audio_buffer) > (switch_size_t) (framelen)))) {
 			if (!(bread = switch_buffer_read(fh->audio_buffer, abuf, framelen))) {
-				break; 
+				if (eof) {
+					break; 
+				} else {
+					continue;
+				}
 			}
-			olen = asis ? bread : bread / 2;
+
+			if (bread < framelen) {
+				memset(abuf + bread, 0, framelen - bread);
+			}
+
+			olen = asis ? framelen : ilen;
 		} else {
 			if (eof) {
 				break;



More information about the Freeswitch-svn mailing list