@ -2352,6 +2352,10 @@ static int conf_run(struct ast_channel *chan, struct ast_conference *conf, int c
ast_mutex_lock ( & conf - > listenlock ) ;
ast_mutex_lock ( & conf - > listenlock ) ;
if ( ! conf - > transframe [ index ] ) {
if ( ! conf - > transframe [ index ] ) {
if ( conf - > origframe ) {
if ( conf - > origframe ) {
if ( musiconhold & & ! ast_dsp_silence ( dsp , conf - > origframe , & confsilence ) & & confsilence < MEETME_DELAYDETECTTALK ) {
ast_moh_stop ( chan ) ;
mohtempstopped = 1 ;
}
if ( ! conf - > transpath [ index ] )
if ( ! conf - > transpath [ index ] )
conf - > transpath [ index ] = ast_translator_build_path ( ( 1 < < index ) , AST_FORMAT_SLINEAR ) ;
conf - > transpath [ index ] = ast_translator_build_path ( ( 1 < < index ) , AST_FORMAT_SLINEAR ) ;
if ( conf - > transpath [ index ] ) {
if ( conf - > transpath [ index ] ) {
@ -2365,11 +2369,6 @@ static int conf_run(struct ast_channel *chan, struct ast_conference *conf, int c
if ( ( conf - > transframe [ index ] - > frametype ! = AST_FRAME_NULL ) & &
if ( ( conf - > transframe [ index ] - > frametype ! = AST_FRAME_NULL ) & &
can_write ( chan , confflags ) ) {
can_write ( chan , confflags ) ) {
struct ast_frame * cur ;
struct ast_frame * cur ;
if ( musiconhold & & ! ast_dsp_silence ( dsp , conf - > transframe [ index ] , & confsilence ) & & confsilence < MEETME_DELAYDETECTTALK ) {
ast_moh_stop ( chan ) ;
mohtempstopped = 1 ;
}
/* the translator may have returned a list of frames, so
/* the translator may have returned a list of frames, so
write each one onto the channel
write each one onto the channel
*/
*/