From dd4a3b182565a709bbf77fee337622edcd88ff55 Mon Sep 17 00:00:00 2001 From: Richard Mudgett Date: Fri, 16 Mar 2012 20:37:54 +0000 Subject: Simplify some code in ast_app_run_sub(). * Remove unnnecessary const from const char * const var declaration in the ast_app_run_macro() and ast_app_run_sub() prototypes. The second const is unnecessary. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@359904 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- main/app.c | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) (limited to 'main/app.c') diff --git a/main/app.c b/main/app.c index 3cdb18432..1354d44e0 100644 --- a/main/app.c +++ b/main/app.c @@ -281,22 +281,24 @@ static int app_exec_dialplan(struct ast_channel *autoservice_chan, struct ast_ch return res; } -int ast_app_run_macro(struct ast_channel *autoservice_chan, struct ast_channel *macro_chan, const char * const name, const char * const args) +int ast_app_run_macro(struct ast_channel *autoservice_chan, struct ast_channel *macro_chan, const char *name, const char *args) { char buf[1024]; snprintf(buf, sizeof(buf), "%s%s%s", name, ast_strlen_zero(args) ? "" : ",", S_OR(args, "")); return app_exec_dialplan(autoservice_chan, macro_chan, buf, 0); } -int ast_app_run_sub(struct ast_channel *autoservice_chan, struct ast_channel *sub_chan, const char * const location, const char * const args) +int ast_app_run_sub(struct ast_channel *autoservice_chan, struct ast_channel *sub_chan, const char *location, const char *args) { char buf[1024]; size_t offset = snprintf(buf, sizeof(buf), "%s", location); + /* need to bump the priority by one if we already have a pbx */ if (ast_channel_pbx(sub_chan)) { int iprio; - const char * priority = location; - const char * next = strchr(priority,','); + const char *priority = location; + const char *next = strchr(priority,','); + /* jump to the priority portion of the location */ if (next) { priority = next + 1; @@ -314,8 +316,8 @@ int ast_app_run_sub(struct ast_channel *autoservice_chan, struct ast_channel *su } } } - if (offset < sizeof(buf)) { - snprintf(buf + offset, sizeof(buf) - offset, "%s%s%s", ast_strlen_zero(args) ? "" : "(", S_OR(args, ""), ast_strlen_zero(args) ? "" : ")"); + if (!ast_strlen_zero(args) && offset < sizeof(buf)) { + snprintf(buf + offset, sizeof(buf) - offset, "(%s)", args); } return app_exec_dialplan(autoservice_chan, sub_chan, buf, 1); } -- cgit v1.2.3