]> git.ipfire.org Git - thirdparty/asterisk.git/commit
Fix Dial I option ignored if dial forked and one fork redirects.
authorRichard Mudgett <rmudgett@digium.com>
Thu, 24 May 2012 23:52:40 +0000 (23:52 +0000)
committerRichard Mudgett <rmudgett@digium.com>
Thu, 24 May 2012 23:52:40 +0000 (23:52 +0000)
commite5185367735ee26b93cddc9d162d584f412456ad
treeeaff5e0394f58af50d844250a7500e48438a9f60
parentbdaecbb66b1d6f92f32d14e34fb399634bb5079a
Fix Dial I option ignored if dial forked and one fork redirects.

The Dial and Queue I option is intended to block connected line updates
and redirecting updates.  However, it is a feature that when a call is
locally redirected, the I option is disabled if the redirected call runs
as a local channel so the administrator can have an opportunity to setup
new connected line information.  Unfortunately, the Dial and Queue I
option is disabled for *all* forked calls if one of those calls is
redirected.

* Make the Dial and Queue I option apply to each outgoing call leg
independently.  Now if one outgoing call leg is locally redirected, the
other outgoing calls are not affected.

* Made Dial not pass any redirecting updates when forking calls.
Redirecting updates do not make sense for this scenario.

* Made Queue not pass any redirecting updates when using the ringall
strategy.  Redirecting updates do not make sense for this scenario.

* Fixed deadlock potential with chan_local when Dial and Queue send
redirecting updates for a local redirect.

* Converted the Queue stillgoing flag to a boolean bitfield.

(closes issue ASTERISK-19511)
Reported by: rmudgett
Tested by: rmudgett

Review: https://reviewboard.asterisk.org/r/1920/
........

Merged revisions 367678 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........

Merged revisions 367679 from http://svn.asterisk.org/svn/asterisk/branches/10

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@367693 65c4cc65-6c06-0410-ace0-fbb531ad65f3
apps/app_dial.c
apps/app_queue.c