]> git.ipfire.org Git - thirdparty/asterisk.git/commit
AGI: Only defer frames when in an interception routine. 98/4298/2
authorMark Michelson <mmichelson@digium.com>
Thu, 3 Nov 2016 21:42:40 +0000 (16:42 -0500)
committerGeorge Joseph <gjoseph@digium.com>
Tue, 8 Nov 2016 14:14:20 +0000 (07:14 -0700)
commit5c10091f3d1430c6fc04015226f8c3e3aa9d8282
treef6f6e29422025fbd467f61a6dce6e3dc36c89d2f
parent3870e8d76d62694debb5bb6cfddc7f49194cf5ea
AGI: Only defer frames when in an interception routine.

AGI recently was modified to defer important frames. This was because
when AGI was used in a connected line interception routine, the
resulting connected line frame would end up getting discarded by the
AGI.

However, this caused bad behavior in other cases. Specifically, during a
transfer, if someone attempted to manually set the Caller ID on a
channel in an AGI, the deferred connected line frame would end up
overwriting what had been manually set in the AGI.

Since the initial issue was specific to interception routines, this
change removes the manual frame deferral from AGI and instead uses the
new frame deferral API in interception routines.

ASTERISK-26343 #close
Reported by Morton Tryfoss

Change-Id: Iab7d39436d0ee99bfe32ad55ef91e9bd88db4208
main/channel.c
res/res_agi.c