@ -2137,6 +2137,7 @@ static int conf_rec_name(struct confbridge_user *user, const char *conf_name)
}
}
if ( res = = - 1 ) {
if ( res = = - 1 ) {
ast_filedelete ( user - > name_rec_location , NULL ) ;
user - > name_rec_location [ 0 ] = ' \0 ' ;
user - > name_rec_location [ 0 ] = ' \0 ' ;
return - 1 ;
return - 1 ;
}
}
@ -2228,6 +2229,7 @@ static int confbridge_exec(struct ast_channel *chan, const char *data)
{
{
int res = 0 , volume_adjustments [ 2 ] ;
int res = 0 , volume_adjustments [ 2 ] ;
int quiet = 0 ;
int quiet = 0 ;
int async_delete_task_pushed = 0 ;
char * parse ;
char * parse ;
const char * b_profile_name = NULL ;
const char * b_profile_name = NULL ;
const char * u_profile_name = NULL ;
const char * u_profile_name = NULL ;
@ -2473,6 +2475,7 @@ static int confbridge_exec(struct ast_channel *chan, const char *data)
async_play_sound_file ( conference ,
async_play_sound_file ( conference ,
conf_get_sound ( CONF_SOUND_HAS_LEFT , conference - > b_profile . sounds ) , NULL ) ;
conf_get_sound ( CONF_SOUND_HAS_LEFT , conference - > b_profile . sounds ) , NULL ) ;
async_delete_name_rec ( conference , user . name_rec_location ) ;
async_delete_name_rec ( conference , user . name_rec_location ) ;
async_delete_task_pushed = 1 ;
}
}
/* play the leave sound */
/* play the leave sound */
@ -2501,6 +2504,9 @@ static int confbridge_exec(struct ast_channel *chan, const char *data)
}
}
confbridge_cleanup :
confbridge_cleanup :
if ( ! async_delete_task_pushed & & ! ast_strlen_zero ( user . name_rec_location ) ) {
ast_filedelete ( user . name_rec_location , NULL ) ;
}
ast_bridge_features_cleanup ( & user . features ) ;
ast_bridge_features_cleanup ( & user . features ) ;
conf_bridge_profile_destroy ( & user . b_profile ) ;
conf_bridge_profile_destroy ( & user . b_profile ) ;
return res ;
return res ;