]> git.ipfire.org Git - thirdparty/asterisk.git/commitdiff
Merged revisions 67649 via svnmerge from
authorJoshua Colp <jcolp@digium.com>
Wed, 6 Jun 2007 13:30:25 +0000 (13:30 +0000)
committerJoshua Colp <jcolp@digium.com>
Wed, 6 Jun 2007 13:30:25 +0000 (13:30 +0000)
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r67649 | file | 2007-06-06 09:28:34 -0400 (Wed, 06 Jun 2007) | 2 lines

Reinvite the RTP back to the Asterisk machine when the timeout happens. (issue #9888 reported by gasparz)

........

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@67650 65c4cc65-6c06-0410-ace0-fbb531ad65f3

main/rtp.c

index 6515406c3ab0f77624ebf80780502dea12fa3095..8eaa0a4535218ddd091c3b1eef0348927721746a 100644 (file)
@@ -2885,8 +2885,13 @@ static enum ast_bridge_result bridge_native_loop(struct ast_channel *c0, struct
 
                /* Wait for frame to come in on the channels */
                if (!(who = ast_waitfor_n(cs, 2, &timeoutms))) {
-                       if (!timeoutms)
+                       if (!timeoutms) {
+                               if (pr0->set_rtp_peer(c0, NULL, NULL, 0, 0))
+                                       ast_log(LOG_WARNING, "Channel '%s' failed to break RTP bridge\n", c0->name);
+                               if (pr1->set_rtp_peer(c1, NULL, NULL, 0, 0))
+                                       ast_log(LOG_WARNING, "Channel '%s' failed to break RTP bridge\n", c1->name);
                                return AST_BRIDGE_RETRY;
+                       }
                        if (option_debug)
                                ast_log(LOG_DEBUG, "Ooh, empty read...\n");
                        if (ast_check_hangup(c0) || ast_check_hangup(c1))