avoid multiple strlen calls in complete_queue

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@7667 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
Russell Bryant
2005-12-29 08:15:48 +00:00
parent a6d13ff79f
commit 1bd94abf57

View File

@@ -3360,17 +3360,22 @@ static int queue_show(int fd, int argc, char **argv)
static char *complete_queue(char *line, char *word, int pos, int state) static char *complete_queue(char *line, char *word, int pos, int state)
{ {
struct ast_call_queue *q; struct ast_call_queue *q;
int which=0; char *ret = NULL;
int which = 0;
int wordlen = strlen(word);
ast_mutex_lock(&qlock); ast_mutex_lock(&qlock);
for (q = queues; q; q = q->next) { for (q = queues; q; q = q->next) {
if (!strncasecmp(word, q->name, strlen(word))) { if (!strncasecmp(word, q->name, wordlen)) {
if (++which > state) if (++which > state) {
ret = strdup(q->name);
break; break;
}
} }
} }
ast_mutex_unlock(&qlock); ast_mutex_unlock(&qlock);
return q ? strdup(q->name) : NULL;
return ret;
} }
/*!\brief callback to display queues status in manager /*!\brief callback to display queues status in manager