[asterisk-commits] dvossel: branch 1.4 r222542 - /branches/1.4/channels/chan_sip.c

SVN commits to the Asterisk project asterisk-commits at lists.digium.com
Wed Oct 7 12:41:25 CDT 2009


Author: dvossel
Date: Wed Oct  7 12:41:21 2009
New Revision: 222542

URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=222542
Log:
crash on transfer

handle_invite_replaces() attempts to uplock a pvt's
owner channel without first verifing that it exists.

(issue #16027)


Modified:
    branches/1.4/channels/chan_sip.c

Modified: branches/1.4/channels/chan_sip.c
URL: http://svnview.digium.com/svn/asterisk/branches/1.4/channels/chan_sip.c?view=diff&rev=222542&r1=222541&r2=222542
==============================================================================
--- branches/1.4/channels/chan_sip.c (original)
+++ branches/1.4/channels/chan_sip.c Wed Oct  7 12:41:21 2009
@@ -14229,7 +14229,10 @@
 			can't harm */
 		transmit_response_with_sdp(p, "200 OK", req, XMIT_RELIABLE);
 		/* Do something more clever here */
-		ast_channel_unlock(c);
+		if (c) {
+			*nounlock = 1;
+			ast_channel_unlock(c);
+		}
 		ast_channel_unlock(replacecall);
 		ast_mutex_unlock(&p->refer->refer_call->lock);
 		return 1;




More information about the asterisk-commits mailing list