|
|
@ -526,17 +526,15 @@ static char *complete_context_remove_extension(char *line, char *word, int pos,
|
|
|
|
(exten && !strncmp(ast_get_extension_name(e), exten,
|
|
|
|
(exten && !strncmp(ast_get_extension_name(e), exten,
|
|
|
|
strlen(exten))) ) { /* if input, compare ... */
|
|
|
|
strlen(exten))) ) { /* if input, compare ... */
|
|
|
|
if (++which > state) {
|
|
|
|
if (++which > state) {
|
|
|
|
/* is there some context input? if not, throw back
|
|
|
|
/* If there is an extension then return
|
|
|
|
* exten@context, if yes throw back only context ...
|
|
|
|
* exten@context.
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
if (!context) {
|
|
|
|
if (exten) {
|
|
|
|
ret = malloc(strlen(ast_get_extension_name(e)) +
|
|
|
|
ret = malloc(strlen(ast_get_extension_name(e)) +
|
|
|
|
strlen(ast_get_context_name(c)) + 2);
|
|
|
|
strlen(ast_get_context_name(c)) + 2);
|
|
|
|
if (ret)
|
|
|
|
if (ret)
|
|
|
|
sprintf(ret, "%s@%s", ast_get_extension_name(e),
|
|
|
|
sprintf(ret, "%s@%s", ast_get_extension_name(e),
|
|
|
|
ast_get_context_name(c));
|
|
|
|
ast_get_context_name(c));
|
|
|
|
} else {
|
|
|
|
|
|
|
|
ret = strdup(ast_get_context_name(c));
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
free(exten); free(context);
|
|
|
|
free(exten); free(context);
|
|
|
|
|
|
|
|
|
|
|
|