]> git.ipfire.org Git - thirdparty/asterisk.git/commit
AGI: Only defer frames when in an interception routine. 42/4342/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 13:00:13 +0000 (06:00 -0700)
commit8d8323b1427b1abe60b4b8777dccb3a2232315e8
treea49aaad4c280521981161f8178ae20daa9e64f0e
parent4a8b1940b896f7e783a5429d0fffee8bed0e4afd
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