mirror of
https://github.com/asterisk/asterisk.git
synced 2025-10-22 12:52:33 +00:00
chan_sip: Unref outbound proxy structure on dialog/pvt destruction.
Make sure outbound proxy refs are always unreffed on dialog destruction. Review: https://reviewboard.asterisk.org/r/4016/ ........ Merged revisions 423800 from http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged revisions 423801 from http://svn.asterisk.org/svn/asterisk/branches/11 ........ Merged revisions 423802 from http://svn.asterisk.org/svn/asterisk/branches/12 ........ Merged revisions 423803 from http://svn.asterisk.org/svn/asterisk/branches/13 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@423804 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
@@ -4391,7 +4391,7 @@ int __sip_ack(struct sip_pvt *p, uint32_t seqno, int resp, int sipmethod)
|
|||||||
If obforcing is set, we will keep the outbound proxy during the whole
|
If obforcing is set, we will keep the outbound proxy during the whole
|
||||||
dialog, regardless of what the SIP rfc says
|
dialog, regardless of what the SIP rfc says
|
||||||
*/
|
*/
|
||||||
if (p->outboundproxy && !p->outboundproxy->force){
|
if (p->outboundproxy && !p->outboundproxy->force) {
|
||||||
ref_proxy(p, NULL);
|
ref_proxy(p, NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -6460,6 +6460,10 @@ void __sip_destroy(struct sip_pvt *p, int lockowner, int lockdialoglist)
|
|||||||
p->options = NULL;
|
p->options = NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (p->outboundproxy) {
|
||||||
|
ref_proxy(p, NULL);
|
||||||
|
}
|
||||||
|
|
||||||
if (p->notify) {
|
if (p->notify) {
|
||||||
ast_variables_destroy(p->notify->headers);
|
ast_variables_destroy(p->notify->headers);
|
||||||
ast_free(p->notify->content);
|
ast_free(p->notify->content);
|
||||||
|
Reference in New Issue
Block a user