summaryrefslogtreecommitdiff
path: root/apps/app_exec.c
diff options
context:
space:
mode:
authorJoshua Colp <jcolp@digium.com>2007-02-15 02:02:30 +0000
committerJoshua Colp <jcolp@digium.com>2007-02-15 02:02:30 +0000
commitdb868d08076e8a2f55beca7bb2bcaba0f550702c (patch)
treede0aeae5a6c3ff32aa37f0a0361c6a9b91499ccd /apps/app_exec.c
parentfd3630715ba113fa4d80d68a05f89c2bc346cd6b (diff)
Few more code clean ups.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@54534 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'apps/app_exec.c')
-rw-r--r--apps/app_exec.c78
1 files changed, 40 insertions, 38 deletions
diff --git a/apps/app_exec.c b/apps/app_exec.c
index 0aafac343..507045cc3 100644
--- a/apps/app_exec.c
+++ b/apps/app_exec.c
@@ -95,30 +95,31 @@ static int exec_exec(struct ast_channel *chan, void *data)
char *s, *appname, *endargs, args[MAXRESULT] = "";
struct ast_app *app;
- u = ast_module_user_add(chan);
+ if (ast_strlen_zero(data))
+ return 0;
- /* Check and parse arguments */
- if (data) {
- s = ast_strdupa(data);
- appname = strsep(&s, "(");
- if (s) {
- endargs = strrchr(s, ')');
- if (endargs)
- *endargs = '\0';
- pbx_substitute_variables_helper(chan, s, args, MAXRESULT - 1);
- }
- if (appname) {
- app = pbx_findapp(appname);
- if (app) {
- res = pbx_exec(chan, app, args);
- } else {
- ast_log(LOG_WARNING, "Could not find application (%s)\n", appname);
- res = -1;
- }
+ u = ast_module_user_add(chan);
+
+ s = ast_strdupa(data);
+ appname = strsep(&s, "(");
+ if (s) {
+ endargs = strrchr(s, ')');
+ if (endargs)
+ *endargs = '\0';
+ pbx_substitute_variables_helper(chan, s, args, MAXRESULT - 1);
+ }
+ if (appname) {
+ app = pbx_findapp(appname);
+ if (app) {
+ res = pbx_exec(chan, app, args);
+ } else {
+ ast_log(LOG_WARNING, "Could not find application (%s)\n", appname);
+ res = -1;
}
}
ast_module_user_remove(u);
+
return res;
}
@@ -129,31 +130,32 @@ static int tryexec_exec(struct ast_channel *chan, void *data)
char *s, *appname, *endargs, args[MAXRESULT] = "";
struct ast_app *app;
+ if (ast_strlen_zero(data))
+ return 0;
+
u = ast_module_user_add(chan);
- /* Check and parse arguments */
- if (data) {
- s = ast_strdupa(data);
- appname = strsep(&s, "(");
- if (s) {
- endargs = strrchr(s, ')');
- if (endargs)
- *endargs = '\0';
- pbx_substitute_variables_helper(chan, s, args, MAXRESULT - 1);
- }
- if (appname) {
- app = pbx_findapp(appname);
- if (app) {
- res = pbx_exec(chan, app, args);
- pbx_builtin_setvar_helper(chan, "TRYSTATUS", res ? "FAILED" : "SUCCESS");
- } else {
- ast_log(LOG_WARNING, "Could not find application (%s)\n", appname);
- pbx_builtin_setvar_helper(chan, "TRYSTATUS", "NOAPP");
- }
+ s = ast_strdupa(data);
+ appname = strsep(&s, "(");
+ if (s) {
+ endargs = strrchr(s, ')');
+ if (endargs)
+ *endargs = '\0';
+ pbx_substitute_variables_helper(chan, s, args, MAXRESULT - 1);
+ }
+ if (appname) {
+ app = pbx_findapp(appname);
+ if (app) {
+ res = pbx_exec(chan, app, args);
+ pbx_builtin_setvar_helper(chan, "TRYSTATUS", res ? "FAILED" : "SUCCESS");
+ } else {
+ ast_log(LOG_WARNING, "Could not find application (%s)\n", appname);
+ pbx_builtin_setvar_helper(chan, "TRYSTATUS", "NOAPP");
}
}
ast_module_user_remove(u);
+
return 0;
}