From d38d930ed5e9d0f6b1aea32250245fe8a4466bbd Mon Sep 17 00:00:00 2001
From: Tilghman Lesher <tilghman@meg.abyt.es>
Date: Thu, 11 Mar 2010 21:07:07 +0000
Subject: [PATCH] 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
---
 apps/app_exec.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/apps/app_exec.c b/apps/app_exec.c
index 6ffc0bca99..2a4da1e2f2 100644
--- a/apps/app_exec.c
+++ b/apps/app_exec.c
@@ -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';
-- 
GitLab