summaryrefslogtreecommitdiff
path: root/channels/chan_sip.c
diff options
context:
space:
mode:
authorJoshua Colp <jcolp@digium.com>2009-01-23 18:09:45 +0000
committerJoshua Colp <jcolp@digium.com>2009-01-23 18:09:45 +0000
commita394fe3a7a5ad9dca93f4c7fb9ea0623e85a20c0 (patch)
tree203d86dbd7501c9a3a458ad8e0b2356f161e00b6 /channels/chan_sip.c
parent40bfad1212bce13ce1d778ad598bff49a1b0a40e (diff)
Merged revisions 170504 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r170504 | file | 2009-01-23 14:04:08 -0400 (Fri, 23 Jan 2009) | 4 lines Use the on hold flag to see if the call is on hold or not. It is possible that our address for them will still be valid even though they are on hold. (closes issue #14295) Reported by: klaus3000 ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@170505 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'channels/chan_sip.c')
-rw-r--r--channels/chan_sip.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/channels/chan_sip.c b/channels/chan_sip.c
index 7b3c2d8be..59b5eb545 100644
--- a/channels/chan_sip.c
+++ b/channels/chan_sip.c
@@ -21025,7 +21025,7 @@ static void check_rtp_timeout(struct sip_pvt *dialog, time_t t)
/* Might be a timeout now -- see if we're on hold */
struct sockaddr_in sin;
ast_rtp_get_peer(dialog->rtp, &sin);
- if (sin.sin_addr.s_addr || (ast_rtp_get_rtpholdtimeout(dialog->rtp) &&
+ if (!ast_test_flag(&dialog->flags[1], SIP_PAGE2_CALL_ONHOLD) || (ast_rtp_get_rtpholdtimeout(dialog->rtp) &&
(t > dialog->lastrtprx + ast_rtp_get_rtpholdtimeout(dialog->rtp)))) {
/* Needs a hangup */
if (ast_rtp_get_rtptimeout(dialog->rtp)) {