]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
fix for FSCORE-221
authorAnthony Minessale <anthony.minessale@gmail.com>
Wed, 19 Nov 2008 22:27:17 +0000 (22:27 +0000)
committerAnthony Minessale <anthony.minessale@gmail.com>
Wed, 19 Nov 2008 22:27:17 +0000 (22:27 +0000)
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@10469 d0543943-73ff-0310-b7d9-9358b9ac24b2

src/switch_core_session.c

index 74db526b6c990270c337a00622c7beff4ab248bd..6e3cba450bf76e054cf7524400f82659b34c8a52 100644 (file)
@@ -489,7 +489,29 @@ SWITCH_DECLARE(switch_status_t) switch_core_session_perform_receive_message(swit
        message->_line = 0;
        
 
-       switch_core_session_kill_channel(session, SWITCH_SIG_BREAK);
+       switch (message->message_id) {
+    case SWITCH_MESSAGE_REDIRECT_AUDIO:
+    case SWITCH_MESSAGE_INDICATE_ANSWER:
+    case SWITCH_MESSAGE_INDICATE_PROGRESS:
+    case SWITCH_MESSAGE_INDICATE_BRIDGE:
+    case SWITCH_MESSAGE_INDICATE_UNBRIDGE:
+    case SWITCH_MESSAGE_INDICATE_TRANSFER:
+    case SWITCH_MESSAGE_INDICATE_RINGING:
+    case SWITCH_MESSAGE_INDICATE_MEDIA:
+    case SWITCH_MESSAGE_INDICATE_NOMEDIA:
+    case SWITCH_MESSAGE_INDICATE_HOLD:
+    case SWITCH_MESSAGE_INDICATE_UNHOLD:
+    case SWITCH_MESSAGE_INDICATE_REDIRECT:
+    case SWITCH_MESSAGE_INDICATE_RESPOND:
+    case SWITCH_MESSAGE_INDICATE_BROADCAST:
+    case SWITCH_MESSAGE_INDICATE_MEDIA_REDIRECT:
+    case SWITCH_MESSAGE_INDICATE_DEFLECT:
+               switch_core_session_kill_channel(session, SWITCH_SIG_BREAK);
+               break;
+       default:
+               break;
+       }
+
        switch_core_session_rwunlock(session);
 
        return status;