|
|
|
@ -2913,7 +2913,7 @@ static enum ast_bridge_result bridge_native_loop(struct ast_channel *c0, struct
|
|
|
|
|
}
|
|
|
|
|
fr = ast_read(who);
|
|
|
|
|
other = (who == c0) ? c1 : c0;
|
|
|
|
|
if (!fr || ((fr->frametype == AST_FRAME_DTMF) &&
|
|
|
|
|
if (!fr || ((fr->frametype == AST_FRAME_DTMF_BEGIN || fr->frametype == AST_FRAME_DTMF_END) &&
|
|
|
|
|
(((who == c0) && (flags & AST_BRIDGE_DTMF_CHANNEL_0)) ||
|
|
|
|
|
((who == c1) && (flags & AST_BRIDGE_DTMF_CHANNEL_1))))) {
|
|
|
|
|
/* Break out of bridge */
|
|
|
|
@ -2965,7 +2965,7 @@ static enum ast_bridge_result bridge_native_loop(struct ast_channel *c0, struct
|
|
|
|
|
}
|
|
|
|
|
} else {
|
|
|
|
|
if ((fr->frametype == AST_FRAME_DTMF_BEGIN) ||
|
|
|
|
|
(fr->frametype == AST_FRAME_DTMF) ||
|
|
|
|
|
(fr->frametype == AST_FRAME_DTMF_END) ||
|
|
|
|
|
(fr->frametype == AST_FRAME_VOICE) ||
|
|
|
|
|
(fr->frametype == AST_FRAME_VIDEO) ||
|
|
|
|
|
(fr->frametype == AST_FRAME_IMAGE) ||
|
|
|
|
@ -3143,7 +3143,7 @@ static enum ast_bridge_result bridge_p2p_loop(struct ast_channel *c0, struct ast
|
|
|
|
|
fr = ast_read(who);
|
|
|
|
|
other = (who == c0) ? c1 : c0;
|
|
|
|
|
/* Dependong on the frame we may need to break out of our bridge */
|
|
|
|
|
if (!fr || ((fr->frametype == AST_FRAME_DTMF) &&
|
|
|
|
|
if (!fr || ((fr->frametype == AST_FRAME_DTMF_BEGIN || fr->frametype == AST_FRAME_DTMF_END) &&
|
|
|
|
|
((who == c0) && (flags & AST_BRIDGE_DTMF_CHANNEL_0)) |
|
|
|
|
|
((who == c1) && (flags & AST_BRIDGE_DTMF_CHANNEL_1)))) {
|
|
|
|
|
/* Record received frame and who */
|
|
|
|
@ -3185,7 +3185,7 @@ static enum ast_bridge_result bridge_p2p_loop(struct ast_channel *c0, struct ast
|
|
|
|
|
}
|
|
|
|
|
} else {
|
|
|
|
|
if ((fr->frametype == AST_FRAME_DTMF_BEGIN) ||
|
|
|
|
|
(fr->frametype == AST_FRAME_DTMF) ||
|
|
|
|
|
(fr->frametype == AST_FRAME_DTMF_END) ||
|
|
|
|
|
(fr->frametype == AST_FRAME_VOICE) ||
|
|
|
|
|
(fr->frametype == AST_FRAME_VIDEO) ||
|
|
|
|
|
(fr->frametype == AST_FRAME_IMAGE) ||
|
|
|
|
|