mirror of
https://github.com/asterisk/asterisk.git
synced 2025-10-13 00:04:53 +00:00
The switch fallthrough could create some errorneous situations, so best to force directly to the default case.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@273714 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
@@ -1188,22 +1188,27 @@ static int get_member_status(struct call_queue *q, int max_penalty, int min_pena
|
|||||||
ast_debug(4, "%s is unavailable because his device state is 'invalid'\n", member->membername);
|
ast_debug(4, "%s is unavailable because his device state is 'invalid'\n", member->membername);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
goto default_case;
|
||||||
case AST_DEVICE_UNAVAILABLE:
|
case AST_DEVICE_UNAVAILABLE:
|
||||||
if (conditions & QUEUE_EMPTY_UNAVAILABLE) {
|
if (conditions & QUEUE_EMPTY_UNAVAILABLE) {
|
||||||
ast_debug(4, "%s is unavailable because his device state is 'unavailable'\n", member->membername);
|
ast_debug(4, "%s is unavailable because his device state is 'unavailable'\n", member->membername);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
goto default_case;
|
||||||
case AST_DEVICE_INUSE:
|
case AST_DEVICE_INUSE:
|
||||||
if (conditions & QUEUE_EMPTY_INUSE) {
|
if (conditions & QUEUE_EMPTY_INUSE) {
|
||||||
ast_debug(4, "%s is unavailable because his device state is 'inuse'\n", member->membername);
|
ast_debug(4, "%s is unavailable because his device state is 'inuse'\n", member->membername);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
goto default_case;
|
||||||
case AST_DEVICE_UNKNOWN:
|
case AST_DEVICE_UNKNOWN:
|
||||||
if (conditions & QUEUE_EMPTY_UNKNOWN) {
|
if (conditions & QUEUE_EMPTY_UNKNOWN) {
|
||||||
ast_debug(4, "%s is unavailable because his device state is 'unknown'\n", member->membername);
|
ast_debug(4, "%s is unavailable because his device state is 'unknown'\n", member->membername);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
/* Fall-through */
|
||||||
default:
|
default:
|
||||||
|
default_case:
|
||||||
if (member->paused && (conditions & QUEUE_EMPTY_PAUSED)) {
|
if (member->paused && (conditions & QUEUE_EMPTY_PAUSED)) {
|
||||||
ast_debug(4, "%s is unavailable because he is paused'\n", member->membername);
|
ast_debug(4, "%s is unavailable because he is paused'\n", member->membername);
|
||||||
break;
|
break;
|
||||||
|
Reference in New Issue
Block a user