aboutsummaryrefslogtreecommitdiffstats
path: root/cli.c
diff options
context:
space:
mode:
authorrussell <russell@f38db490-d61c-443f-a65b-d21fe96a405b>2005-12-20 20:20:04 +0000
committerrussell <russell@f38db490-d61c-443f-a65b-d21fe96a405b>2005-12-20 20:20:04 +0000
commitcc20111b727a69579dd9e58e05fca9deb75687f7 (patch)
tree028d8f36127b8aefd66e997f6e27e207a85f1e15 /cli.c
parent59d6c7a704380c45bef9313de86f6b2620e80366 (diff)
- move the string join() function to utils.c since it is used in both cli.c and res_agi.c
- reimplement ast_join to be of linear effieciency instead of quadratic - remove some useless checks for "if (e)" - reorder checks for strings starting with '_' to avoid a useless call to ast_join() - check array bounds when parsing arguments to AGI (issue #5868) git-svn-id: http://svn.digium.com/svn/asterisk/trunk@7556 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'cli.c')
-rw-r--r--cli.c13
1 files changed, 2 insertions, 11 deletions
diff --git a/cli.c b/cli.c
index f1a241e40..a06f19f65 100644
--- a/cli.c
+++ b/cli.c
@@ -1019,17 +1019,8 @@ static struct ast_cli_entry *find_cli(char *cmds[], int exact)
static void join(char *dest, size_t destsize, char *w[], int tws)
{
- int x;
- /* Join words into a string */
- if (!dest || destsize < 1) {
- return;
- }
- dest[0] = '\0';
- for (x=0;w[x];x++) {
- if (x)
- strncat(dest, " ", destsize - strlen(dest) - 1);
- strncat(dest, w[x], destsize - strlen(dest) - 1);
- }
+ ast_join(dest, destsize, w);
+
if (tws && !ast_strlen_zero(dest))
strncat(dest, " ", destsize - strlen(dest) - 1);
}