diff options
author | mmichelson <mmichelson@f38db490-d61c-443f-a65b-d21fe96a405b> | 2009-06-12 19:08:15 +0000 |
---|---|---|
committer | mmichelson <mmichelson@f38db490-d61c-443f-a65b-d21fe96a405b> | 2009-06-12 19:08:15 +0000 |
commit | 18da8a7277b5c9d9fb9b42e81231323762898de6 (patch) | |
tree | f4d0c6bcfb91fec02c0f38a6e1586ff2f00e1f6e | |
parent | d2e6944b19b1ed1276807161fcbd6fe8cbd6fea0 (diff) |
Merged revisions 200361 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk
................
r200361 | mmichelson | 2009-06-12 14:07:51 -0500 (Fri, 12 Jun 2009) | 16 lines
Merged revisions 200360 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r200360 | mmichelson | 2009-06-12 14:06:41 -0500 (Fri, 12 Jun 2009) | 10 lines
Suppress a warning message and give a better return code when generating
inband ringing after a call is answered.
(closes issue #15158)
Reported by: madkins
Patches:
15158.patch uploaded by mmichelson (license 60)
Tested by: madkins
........
................
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.6.0@200362 f38db490-d61c-443f-a65b-d21fe96a405b
-rw-r--r-- | main/channel.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/main/channel.c b/main/channel.c index 466931201..3bcccea02 100644 --- a/main/channel.c +++ b/main/channel.c @@ -3063,6 +3063,16 @@ int ast_indicate_data(struct ast_channel *chan, int _condition, switch (condition) { case AST_CONTROL_RINGING: ts = ast_get_indication_tone(chan->zone, "ring"); + /* It is common practice for channel drivers to return -1 if trying + * to indicate ringing on a channel which is up. The idea is to let the + * core generate the ringing inband. However, we don't want the + * warning message about not being able to handle the specific indication + * to print nor do we want ast_indicate_data to return an "error" for this + * condition + */ + if (chan->_state == AST_STATE_UP) { + res = 0; + } break; case AST_CONTROL_BUSY: ts = ast_get_indication_tone(chan->zone, "busy"); |