From: Jason Parker Date: Wed, 27 Jun 2007 22:27:09 +0000 (+0000) Subject: Fix a segfault when trying to tab complete the "core show uptime" command. X-Git-Tag: 1.6.0-beta1~3^2~2226 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=ed101a5319cb83dcbc7bab0b64a0c6e8aa69772c;p=thirdparty%2Fasterisk.git Fix a segfault when trying to tab complete the "core show uptime" command. Reported in #asterisk-dev on IRC by jcmoore, fixed by me. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@72326 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- diff --git a/main/cli.c b/main/cli.c index e2ddeb3c88..7607793ae0 100644 --- a/main/cli.c +++ b/main/cli.c @@ -387,7 +387,7 @@ static char * handle_showuptime(struct ast_cli_entry *e, int cmd, struct ast_cli switch (cmd) { case CLI_INIT: - e->command = "core show uptime"; + e->command = "core show uptime [seconds]"; e->usage = "Usage: core show uptime [seconds]\n" " Shows Asterisk uptime information.\n" @@ -395,12 +395,12 @@ static char * handle_showuptime(struct ast_cli_entry *e, int cmd, struct ast_cli return NULL; case CLI_GENERATE: - return (a->pos > e->args || a->n > 0) ? NULL : "seconds"; + return NULL; } /* regular handler */ - if (a->argc == e->args+1 && !strcasecmp(a->argv[e->args],"seconds")) + if (a->argc == e->args && !strcasecmp(a->argv[e->args-1],"seconds")) printsec = 1; - else if (a->argc == e->args) + else if (a->argc == e->args-1) printsec = 0; else return CLI_SHOWUSAGE;