mirror of
https://github.com/asterisk/asterisk.git
synced 2025-11-16 23:08:32 +00:00
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:
@@ -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
|
||||||
|
|||||||
Reference in New Issue
Block a user