summaryrefslogtreecommitdiff
path: root/channel.c
diff options
context:
space:
mode:
authorMark Spencer <markster@digium.com>2003-08-15 18:29:33 +0000
committerMark Spencer <markster@digium.com>2003-08-15 18:29:33 +0000
commiteb72c49bd2a6893b9368017e07e3b744b4260792 (patch)
treefada72b32bb0ed54b154716f7d89659d9a9a3065 /channel.c
parent37b7bccc6175429b0a33bcbfd6a5bd5ef4aa9628 (diff)
Don't double generate events
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@1339 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'channel.c')
-rwxr-xr-xchannel.c14
1 files changed, 8 insertions, 6 deletions
diff --git a/channel.c b/channel.c
index 5cc58d0f9..a97f0e845 100755
--- a/channel.c
+++ b/channel.c
@@ -1540,12 +1540,14 @@ struct ast_channel *ast_request(char *type, int format, void *data)
c = chan->requester(type, capabilities, data);
if (c) {
// ast_device_state_changed(c->name);
- manager_event(EVENT_FLAG_CALL, "Newchannel",
- "Channel: %s\r\n"
- "State: %s\r\n"
- "Callerid: %s\r\n"
- "Uniqueid: %s\r\n",
- c->name, ast_state2str(c->_state), c->callerid ? c->callerid : "<unknown>", c->uniqueid);
+ if (c->_state == AST_STATE_DOWN) {
+ manager_event(EVENT_FLAG_CALL, "Newchannel",
+ "Channel: %s\r\n"
+ "State: %s\r\n"
+ "Callerid: %s\r\n"
+ "Uniqueid: %s\r\n",
+ c->name, ast_state2str(c->_state), c->callerid ? c->callerid : "<unknown>", c->uniqueid);
+ }
}
return c;
}