diff options
author | markster <markster@f38db490-d61c-443f-a65b-d21fe96a405b> | 2004-04-28 22:12:08 +0000 |
---|---|---|
committer | markster <markster@f38db490-d61c-443f-a65b-d21fe96a405b> | 2004-04-28 22:12:08 +0000 |
commit | fefa0442a5925353c6c06c1e7ebcb4126a66a746 (patch) | |
tree | ac30cb6da3d8e8acad18b2d9b100cd435f8943cc /channels | |
parent | 56a26c53fd122a0876aab2402a24722b0c4b57ad (diff) |
Don't double receive INFO or MESSAGE elements (bug #1512)
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@2808 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'channels')
-rwxr-xr-x | channels/chan_sip.c | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/channels/chan_sip.c b/channels/chan_sip.c index 2fd2f675f..220f213b4 100755 --- a/channels/chan_sip.c +++ b/channels/chan_sip.c @@ -5718,9 +5718,11 @@ static int handle_request(struct sip_pvt *p, struct sip_request *req, struct soc p->needdestroy = 1; transmit_response(p, "200 OK", req); } else if (!strcasecmp(cmd, "MESSAGE")) { - if (sipdebug) - ast_verbose("Receiving message!\n"); - receive_message(p, req); + if (!ignore) { + if (sipdebug) + ast_verbose("Receiving message!\n"); + receive_message(p, req); + } transmit_response(p, "200 OK", req); } else if (!strcasecmp(cmd, "SUBSCRIBE")) { if (!ignore) { @@ -5788,9 +5790,11 @@ static int handle_request(struct sip_pvt *p, struct sip_request *req, struct soc transmit_state_notify(p, ast_extension_state(NULL, p->context, p->exten),1); } } else if (!strcasecmp(cmd, "INFO")) { - if (sipdebug) - ast_verbose("Receiving DTMF!\n"); - receive_info(p, req); + if (!ignore) { + if (sipdebug) + ast_verbose("Receiving DTMF!\n"); + receive_info(p, req); + } transmit_response(p, "200 OK", req); } else if (!strcasecmp(cmd, "REGISTER")) { /* Use this as the basis */ |