Because ExecIf needs to reprocess arguments, it's best if we don't remove quotes during parsing.
(closes issue #16905) Reported by: ip-rob Patches: 20100303__issue16905.diff.txt uploaded by tilghman (license 14) Tested by: ip-rob git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@251884 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
parent
c83f35d4a0
commit
d38d930ed5
|
@ -235,13 +235,13 @@ static int execif_exec(struct ast_channel *chan, const char *data)
|
|||
} else {
|
||||
/* Preferred syntax */
|
||||
|
||||
AST_NONSTANDARD_APP_ARGS(expr, parse, '?');
|
||||
AST_NONSTANDARD_RAW_ARGS(expr, parse, '?');
|
||||
if (ast_strlen_zero(expr.remainder)) {
|
||||
ast_log(LOG_ERROR, "Usage: ExecIf(<expr>?<appiftrue>(<args>)[:<appiffalse>(<args)])\n");
|
||||
return -1;
|
||||
}
|
||||
|
||||
AST_NONSTANDARD_APP_ARGS(apps, expr.remainder, ':');
|
||||
AST_NONSTANDARD_RAW_ARGS(apps, expr.remainder, ':');
|
||||
|
||||
if (apps.t && (truedata = strchr(apps.t, '('))) {
|
||||
*truedata++ = '\0';
|
||||
|
|
Loading…
Reference in New Issue