summaryrefslogtreecommitdiff
path: root/pbx.c
diff options
context:
space:
mode:
authorRussell Bryant <russell@russellbryant.com>2005-12-27 20:03:07 +0000
committerRussell Bryant <russell@russellbryant.com>2005-12-27 20:03:07 +0000
commit04fc58d0384b418468c71d3b268b5959d920f20b (patch)
tree743b681a8c58dfdf6f39440d005d2416e5d13250 /pbx.c
parent27a345626c574203ecf4fe0bc0fa00bbaa06861d (diff)
minor cleanups for another cli completion function ...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@7661 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'pbx.c')
-rw-r--r--pbx.c13
1 files changed, 6 insertions, 7 deletions
diff --git a/pbx.c b/pbx.c
index 20754475f..57f8c6e1d 100644
--- a/pbx.c
+++ b/pbx.c
@@ -1196,10 +1196,9 @@ static int handle_show_function(int fd, int argc, char *argv[])
static char *complete_show_function(char *line, char *word, int pos, int state)
{
struct ast_custom_function *acf;
+ char *ret = NULL;
int which = 0;
- int wordlen;
-
- wordlen = strlen(word);
+ int wordlen = strlen(word);
/* try to lock functions list ... */
if (ast_mutex_lock(&acflock)) {
@@ -1210,15 +1209,15 @@ static char *complete_show_function(char *line, char *word, int pos, int state)
for (acf = acf_root; acf; acf = acf->next) {
if (!strncasecmp(word, acf->name, wordlen)) {
if (++which > state) {
- char *ret = strdup(acf->name);
- ast_mutex_unlock(&acflock);
- return ret;
+ ret = strdup(acf->name);
+ break;
}
}
}
ast_mutex_unlock(&acflock);
- return NULL;
+
+ return ret;
}
struct ast_custom_function* ast_custom_function_find(const char *name)