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: http://svn.digium.com/svn/asterisk/trunk@251884 f38db490-d61c-443f-a65b-d21fe96a405b
This commit is contained in:
parent
93edcf91e7
commit
89117b3d9e
|
@ -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';
|
||||
|
|
Reference in New Issue