diff options
author | Mark Spencer <markster@digium.com> | 2004-10-22 13:24:00 +0000 |
---|---|---|
committer | Mark Spencer <markster@digium.com> | 2004-10-22 13:24:00 +0000 |
commit | 28e37def56b958335db965e94f71a20ed11b6669 (patch) | |
tree | bb57cfa65bdb6c5b813e6836c0f0388aa5d8f893 /channels | |
parent | 3c8a994aed5b1676b0d8a7ee58c8d284ef5bcb7a (diff) |
Fixed in CVS head.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@4044 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'channels')
-rwxr-xr-x | channels/chan_sip.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/channels/chan_sip.c b/channels/chan_sip.c index 8c58d20d8..f70cd75f0 100755 --- a/channels/chan_sip.c +++ b/channels/chan_sip.c @@ -6824,9 +6824,14 @@ static void handle_response(struct sip_pvt *p, int resp, char *rest, struct sip_ if (!p->owner) p->needdestroy = 1; } else if ((resp >= 100) && (resp < 200)) { - /* Unknown 1xx repsonses should be treated as 100 */ if (!strcasecmp(msg, "INVITE")) { sip_cancel_destroy(p); + if (!ast_strlen_zero(get_header(req, "Content-Type"))) + process_sdp(p, req); + if (p->owner) { + /* Queue a progress frame */ + ast_queue_control(p->owner, AST_CONTROL_PROGRESS); + } } } else ast_log(LOG_NOTICE, "Dunno anything about a %d %s response from %s\n", resp, rest, p->owner ? p->owner->name : ast_inet_ntoa(iabuf, sizeof(iabuf), p->sa.sin_addr)); |