mirror of
https://github.com/asterisk/asterisk.git
synced 2025-09-24 14:56:58 +00:00
Merged revisions 157503 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r157503 | mmichelson | 2008-11-18 16:47:57 -0600 (Tue, 18 Nov 2008) | 13 lines Add some missing invite state changes necessary in the sip_write function. Not setting the invite state correctly on the call was resulting in the Record application leaving empty files. I also have updated the doxygen comment next to the declaration of the INV_EARLY_MEDIA constant to reflect that we also use this state when we *send* a 18X response to an INVITE. (closes issue #13878) Reported by: nahuelgreco Patches: sip-early-media-recording-1.4.22.patch uploaded by nahuelgreco (license 162) Tested by: putnopvut ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@157512 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
@@ -5640,6 +5640,7 @@ static int sip_write(struct ast_channel *ast, struct ast_frame *frame)
|
||||
!ast_test_flag(&p->flags[0], SIP_PROGRESS_SENT) &&
|
||||
!ast_test_flag(&p->flags[0], SIP_OUTGOING)) {
|
||||
ast_rtp_new_source(p->rtp);
|
||||
p->invitestate = INV_EARLY_MEDIA;
|
||||
transmit_response_with_sdp(p, "183 Session Progress", &p->initreq, XMIT_UNRELIABLE, FALSE);
|
||||
ast_set_flag(&p->flags[0], SIP_PROGRESS_SENT);
|
||||
}
|
||||
@@ -5657,6 +5658,7 @@ static int sip_write(struct ast_channel *ast, struct ast_frame *frame)
|
||||
if ((ast->_state != AST_STATE_UP) &&
|
||||
!ast_test_flag(&p->flags[0], SIP_PROGRESS_SENT) &&
|
||||
!ast_test_flag(&p->flags[0], SIP_OUTGOING)) {
|
||||
p->invitestate = INV_EARLY_MEDIA;
|
||||
transmit_response_with_sdp(p, "183 Session Progress", &p->initreq, XMIT_UNRELIABLE, FALSE);
|
||||
ast_set_flag(&p->flags[0], SIP_PROGRESS_SENT);
|
||||
}
|
||||
@@ -5677,6 +5679,7 @@ static int sip_write(struct ast_channel *ast, struct ast_frame *frame)
|
||||
if ((ast->_state != AST_STATE_UP) &&
|
||||
!ast_test_flag(&p->flags[0], SIP_PROGRESS_SENT) &&
|
||||
!ast_test_flag(&p->flags[0], SIP_OUTGOING)) {
|
||||
p->invitestate = INV_EARLY_MEDIA;
|
||||
transmit_response_with_sdp(p, "183 Session Progress", &p->initreq, XMIT_UNRELIABLE, FALSE);
|
||||
ast_set_flag(&p->flags[0], SIP_PROGRESS_SENT);
|
||||
}
|
||||
|
Reference in New Issue
Block a user