diff options
author | mnicholson <mnicholson@f38db490-d61c-443f-a65b-d21fe96a405b> | 2009-10-09 18:36:13 +0000 |
---|---|---|
committer | mnicholson <mnicholson@f38db490-d61c-443f-a65b-d21fe96a405b> | 2009-10-09 18:36:13 +0000 |
commit | d62d00345680a388b49177ed59fa9fa32de257eb (patch) | |
tree | 1cf5be9cec510892d4daae5398578647eb34f7e8 /main/channel.c | |
parent | b90f2e27630ddcd210366ffcc95fabcbcd218985 (diff) |
Merged revisions 223273 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk
................
r223273 | mnicholson | 2009-10-09 13:34:08 -0500 (Fri, 09 Oct 2009) | 14 lines
Merged revisions 223225 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r223225 | mnicholson | 2009-10-09 13:20:11 -0500 (Fri, 09 Oct 2009) | 8 lines
Signal timeouts by returning AST_CONTROL_RINGING when originating calls.
(closes issue #15104)
Reported by: nblasgen
Patches:
manager-timeout1.diff uploaded by mnicholson (license 96)
Tested by: nblasgen, mnicholson
........
................
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.6.0@223276 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'main/channel.c')
-rw-r--r-- | main/channel.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/main/channel.c b/main/channel.c index 5cac115c1..9575f5763 100644 --- a/main/channel.c +++ b/main/channel.c @@ -3817,7 +3817,11 @@ struct ast_channel *__ast_request_and_dial(const char *type, int format, void *d while (timeout && chan->_state != AST_STATE_UP) { struct ast_frame *f; res = ast_waitfor(chan, timeout); - if (res <= 0) /* error, timeout, or done */ + if (res == 0) { /* timeout, treat it like ringing */ + *outstate = AST_CONTROL_RINGING; + break; + } + if (res < 0) /* error or done */ break; if (timeout > -1) timeout = res; |