Make 'else' argument to ExecIf optional. Clean up the description and usage text a bit.

Closes issue #11564, patch by pnlarsson (with some extra cleanup by me).


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@94814 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
Jason Parker 2007-12-26 22:14:21 +00:00
parent 250f064851
commit f573e85ecc
1 changed files with 6 additions and 6 deletions

View File

@ -77,9 +77,9 @@ static char *tryexec_descrip =
static char *app_execif = "ExecIf";
static char *execif_synopsis = "Executes dialplan application, conditionally";
static char *execif_descrip =
" ExecIF (<expr>?<app>(<data>):<app2>(<data2>))\n"
"If <expr> is true, execute and return the result of <app>(<data>).\n"
"If <expr> is true, but <app> is not found, then the application\n"
" ExecIF (<expr>?<appiftrue>(<args>)[:<appiffalse>(<args>)])\n"
"If <expr> is true, execute and return the result of <appiftrue>(<args>).\n"
"If <expr> is true, but <appiftrue> is not found, then the application\n"
"will return a non-zero value.\n";
static int exec_exec(struct ast_channel *chan, void *data)
@ -162,7 +162,7 @@ static int execif_exec(struct ast_channel *chan, void *data)
AST_NONSTANDARD_APP_ARGS(expr, parse, '?');
if (ast_strlen_zero(expr.remainder)) {
ast_log(LOG_ERROR, "Usage: ExecIf(<cond>?<appiftrue>(<args>):<appiffalse>(<args))\n");
ast_log(LOG_ERROR, "Usage: ExecIf(<expr>?<appiftrue>(<args>)[:<appiffalse>(<args)])\n");
return -1;
}
@ -187,8 +187,8 @@ static int execif_exec(struct ast_channel *chan, void *data)
ast_log(LOG_WARNING, "Could not find application! (%s)\n", apps.t);
res = -1;
}
} else {
if (!ast_strlen_zero(apps.f) && (app = pbx_findapp(apps.f))) {
} else if (!ast_strlen_zero(apps.f)) {
if ((app = pbx_findapp(apps.f))) {
res = pbx_exec(chan, app, S_OR(falsedata, ""));
} else {
ast_log(LOG_WARNING, "Could not find application! (%s)\n", apps.f);