mirror of
https://github.com/asterisk/asterisk.git
synced 2025-09-04 03:50:31 +00:00
Fix an infinite loop with tab completion of CLI aliases that reference themselves.
(closes issue #15020) Reported by: junky git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@192700 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
@@ -98,7 +98,9 @@ static char *cli_alias_passthrough(struct ast_cli_entry *e, int cmd, struct ast_
|
||||
case CLI_GENERATE:
|
||||
line = a->line;
|
||||
line += (strlen(alias->alias));
|
||||
if (!ast_strlen_zero(a->word)) {
|
||||
if (!strncmp(alias->alias, alias->real_cmd, strlen(alias->alias))) {
|
||||
generator = NULL;
|
||||
} else if (!ast_strlen_zero(a->word)) {
|
||||
struct ast_str *real_cmd = ast_str_alloca(strlen(alias->real_cmd) + strlen(line) + 1);
|
||||
ast_str_append(&real_cmd, 0, "%s%s", alias->real_cmd, line);
|
||||
generator = ast_cli_generator(ast_str_buffer(real_cmd), a->word, a->n);
|
||||
|
Reference in New Issue
Block a user