Revision
16387
Author
anthm
Date
2010-01-18 11:09:05 -0600 (Mon, 18 Jan 2010)

Log Message

MODENDP-276

Modified Paths

Diff

Modified: freeswitch/trunk/src/mod/endpoints/mod_loopback/mod_loopback.c (16386 => 16387)


--- freeswitch/trunk/src/mod/endpoints/mod_loopback/mod_loopback.c	2010-01-18 15:31:47 UTC (rev 16386)
+++ freeswitch/trunk/src/mod/endpoints/mod_loopback/mod_loopback.c	2010-01-18 17:09:05 UTC (rev 16387)
@@ -590,19 +590,18 @@
 		tech_pvt->cng_frame.datalen = tech_pvt->read_codec.implementation->decoded_bytes_per_packet;
 
 		memset(tech_pvt->cng_frame.data, 0, tech_pvt->cng_frame.datalen);
-		memset(&data, 0, sizeof(data));
+		memset(&data, 0, tech_pvt->read_codec.implementation->decoded_bytes_per_packet);
 
 		if (strcasecmp(tech_pvt->read_codec.implementation->iananame, "L16")) {
 			encode_status = switch_core_codec_encode(&tech_pvt->read_codec,
-											  NULL,
-											  data,
-											  sizeof(data),
-											  tech_pvt->read_codec.implementation->actual_samples_per_second,
-
-											  tech_pvt->cng_frame.data,
-											  &tech_pvt->cng_frame.datalen,											  
-											  &rate,
-											  &flag);
+													 NULL,
+													 data,
+													 tech_pvt->read_codec.implementation->decoded_bytes_per_packet,
+													 tech_pvt->read_codec.implementation->actual_samples_per_second,
+													 tech_pvt->cng_frame.data,
+													 &tech_pvt->cng_frame.datalen,											  
+													 &rate,
+													 &flag);
 			if (encode_status != SWITCH_STATUS_SUCCESS) {
 				switch_channel_hangup(channel, SWITCH_CAUSE_DESTINATION_OUT_OF_ORDER);
 			}
@@ -612,8 +611,8 @@
 		//switch_set_flag((&tech_pvt->cng_frame), SFF_CNG);
 		switch_clear_flag_locked(tech_pvt, TFLAG_CNG);
 	}
+	
 
-
 	if (*frame) {
 		status = SWITCH_STATUS_SUCCESS;
 	} else {