minor cleanups for another cli completion function ...
authorRussell Bryant <russell@russellbryant.com>
Tue, 27 Dec 2005 20:03:07 +0000 (20:03 +0000)
committerRussell Bryant <russell@russellbryant.com>
Tue, 27 Dec 2005 20:03:07 +0000 (20:03 +0000)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@7661 65c4cc65-6c06-0410-ace0-fbb531ad65f3

pbx.c

diff --git a/pbx.c b/pbx.c
index 2075447..57f8c6e 100644 (file)
--- 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)