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)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@107161 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
Russell Bryant
2008-03-10 20:17:11 +00:00
parent 0a4fc5b8c6
commit 42caaed426

View File

@@ -5027,9 +5027,9 @@ int ast_pbx_outgoing_exten(const char *type, int format, void *data, int timeout
ast_channel_unlock(chan);
}
ast_hangup(chan);
chan = NULL;
res = -1;
}
chan = NULL;
}
} else {
if (option_verbose > 3)