aboutsummaryrefslogtreecommitdiffstats
path: root/channel.c
diff options
context:
space:
mode:
authormarkster <markster@f38db490-d61c-443f-a65b-d21fe96a405b>2003-08-15 18:29:33 +0000
committermarkster <markster@f38db490-d61c-443f-a65b-d21fe96a405b>2003-08-15 18:29:33 +0000
commit04bb756224537a3095e5dae1b0ba18f7e6891a6e (patch)
treefada72b32bb0ed54b154716f7d89659d9a9a3065 /channel.c
parenta1136fedf44ba8d0bada48295ac00961696b4bf5 (diff)
Don't double generate events
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@1339 f38db490-d61c-443f-a65b-d21fe96a405b
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;
}