[asterisk-commits] russell: branch 1.6.0 r107163 - in /branches/1.6.0: ./ main/pbx.c

SVN commits to the Asterisk project asterisk-commits at lists.digium.com
Mon Mar 10 15:18:13 CDT 2008


Author: russell
Date: Mon Mar 10 15:18:13 2008
New Revision: 107163

URL: http://svn.digium.com/view/asterisk?view=rev&rev=107163
Log:
Merged revisions 107162 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/trunk

................
r107162 | russell | 2008-03-10 15:17:37 -0500 (Mon, 10 Mar 2008) | 16 lines

Merged revisions 107161 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r107161 | russell | 2008-03-10 15:17:11 -0500 (Mon, 10 Mar 2008) | 8 lines

Fix another bug specifically related to asynchronous call origination.  Once the
PBX is started on the channel using ast_pbx_start(), then the ownership of the
channel has been passed on to another thread.  We can no longer access it in this
code.  If the channel gets hung up very quickly, it is possible that we could
access a channel that has been free'd.

(inspired by BE-386)

........

................

Modified:
    branches/1.6.0/   (props changed)
    branches/1.6.0/main/pbx.c

Propchange: branches/1.6.0/
------------------------------------------------------------------------------
Binary property 'trunk-merged' - no diff available.

Modified: branches/1.6.0/main/pbx.c
URL: http://svn.digium.com/view/asterisk/branches/1.6.0/main/pbx.c?view=diff&rev=107163&r1=107162&r2=107163
==============================================================================
--- branches/1.6.0/main/pbx.c (original)
+++ branches/1.6.0/main/pbx.c Mon Mar 10 15:18:13 2008
@@ -6441,9 +6441,9 @@
 							ast_channel_unlock(chan);
 						}
 						ast_hangup(chan);
-						chan = NULL;
 						res = -1;
 					}
+					chan = NULL;
 				}
 			} else {
 				ast_verb(4, "Channel %s was never answered.\n", chan->name);




More information about the asterisk-commits mailing list