AGI/Manager: Prevent multiple NewExten events during AGI application changes
authorJonathan Rose <jrose@digium.com>
Mon, 7 Apr 2014 16:15:34 +0000 (16:15 +0000)
committerJonathan Rose <jrose@digium.com>
Mon, 7 Apr 2014 16:15:34 +0000 (16:15 +0000)
AGI applications would trigger NewExten events every time the state of the AGI
application changed. This has historically not been the behavior and this
behavior was introduced with a CDR patch. This patch corrects that.

(closes issue ASTERISK-23390)
Reported by: Benjamin Keith Ford
Review: https://reviewboard.asterisk.org/r/3406/
........

Merged revisions 411868 from http://svn.asterisk.org/svn/asterisk/branches/12

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@411870 65c4cc65-6c06-0410-ace0-fbb531ad65f3

main/manager_channels.c

index 3fdcc96..e61f790 100644 (file)
@@ -530,8 +530,8 @@ static struct ast_manager_event_blob *channel_newexten(
                return NULL;
        }
 
-       if (old_snapshot && ast_channel_snapshot_cep_equal(old_snapshot, new_snapshot)
-               && !strcmp(old_snapshot->appl, new_snapshot->appl)) {
+       /* Ignore updates if the CEP is unchanged */
+       if (old_snapshot && ast_channel_snapshot_cep_equal(old_snapshot, new_snapshot)) {
                return NULL;
        }