diff options
author | russell <russell@f38db490-d61c-443f-a65b-d21fe96a405b> | 2009-06-26 19:37:43 +0000 |
---|---|---|
committer | russell <russell@f38db490-d61c-443f-a65b-d21fe96a405b> | 2009-06-26 19:37:43 +0000 |
commit | 1f2f558a5a69b7209eb1d502e34c56c02faed2ab (patch) | |
tree | 7156030dae1bf4411818e69cf43647e366fe712e /main/pbx.c | |
parent | 268988c40ff81235fc35491d3c6cd787d676d8df (diff) |
Merged revisions 203702 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk
........
r203702 | russell | 2009-06-26 14:31:14 -0500 (Fri, 26 Jun 2009) | 5 lines
Make invalid hints report Unavailable instead of Idle.
(closes issue #14413)
Reported by: pj
........
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.6.1@203704 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'main/pbx.c')
-rw-r--r-- | main/pbx.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/main/pbx.c b/main/pbx.c index 8fdc769c9..5734241f1 100644 --- a/main/pbx.c +++ b/main/pbx.c @@ -3274,8 +3274,9 @@ static int ast_extension_state2(struct ast_exten *e) rest = hint; /* One or more devices separated with a & character */ - while ( (cur = strsep(&rest, "&")) ) + while ( (cur = strsep(&rest, "&")) ) { ast_devstate_aggregate_add(&agg, ast_device_state(cur)); + } state = ast_devstate_aggregate_result(&agg); @@ -3285,6 +3286,8 @@ static int ast_extension_state2(struct ast_exten *e) case AST_DEVICE_BUSY: return AST_EXTENSION_BUSY; case AST_DEVICE_UNAVAILABLE: + case AST_DEVICE_UNKNOWN: + case AST_DEVICE_INVALID: return AST_EXTENSION_UNAVAILABLE; case AST_DEVICE_RINGINUSE: return (AST_EXTENSION_INUSE | AST_EXTENSION_RINGING); @@ -3292,8 +3295,6 @@ static int ast_extension_state2(struct ast_exten *e) return AST_EXTENSION_RINGING; case AST_DEVICE_INUSE: return AST_EXTENSION_INUSE; - case AST_DEVICE_UNKNOWN: - case AST_DEVICE_INVALID: case AST_DEVICE_NOT_INUSE: return AST_EXTENSION_NOT_INUSE; } |