]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
FS-8166 #resolve [Mute/unmute while shout is playing audio fails because the channel...
authorAnthony Minessale <anthm@freeswitch.org>
Mon, 28 Sep 2015 17:38:58 +0000 (12:38 -0500)
committerAnthony Minessale <anthm@freeswitch.org>
Mon, 28 Sep 2015 17:38:58 +0000 (12:38 -0500)
src/switch_core_media.c
src/switch_core_media_bug.c

index c0163f07e612cbf6752d5d76d0974d8ecaa50b1e..a04e1c6c906af90509c55514a24014697d7ed4a6 100644 (file)
@@ -8943,11 +8943,11 @@ SWITCH_DECLARE(switch_status_t) switch_core_media_receive_message(switch_core_se
                break;
 
        case SWITCH_MESSAGE_INDICATE_HARD_MUTE:
-               {
-                       if (session->bugs) {
+               if (a_engine->rtp_session) {
+                       if (session->bugs && msg->numeric_arg) {
                                switch_log_printf(SWITCH_CHANNEL_SESSION_LOG(session), SWITCH_LOG_WARNING, 
                                                                  "%s has a media bug, hard mute not allowed.\n", switch_channel_get_name(session->channel));
-                       } else if (a_engine->rtp_session) {
+                       } else {
                                if (msg->numeric_arg) {
                                        switch_rtp_set_flag(a_engine->rtp_session, SWITCH_RTP_FLAG_MUTE);
                                } else {
index 681bd4d173e9d0b60c4353d506015c3d1490cfc4..3a02f2f441cfcbed83cc5aa3868ce8397d3c1474 100644 (file)
@@ -854,6 +854,8 @@ SWITCH_DECLARE(switch_status_t) switch_core_media_bug_add(switch_core_session_t
                switch_event_fire(&event);
        }
 
+       switch_core_media_hard_mute(session, SWITCH_FALSE);
+
        return SWITCH_STATUS_SUCCESS;
 }