diff options
author | russell <russell@f38db490-d61c-443f-a65b-d21fe96a405b> | 2006-01-21 17:50:04 +0000 |
---|---|---|
committer | russell <russell@f38db490-d61c-443f-a65b-d21fe96a405b> | 2006-01-21 17:50:04 +0000 |
commit | b14bdc5a1211fa53add7d87b9444b56576d6d2d8 (patch) | |
tree | a0057e266407ad019e0b495dd566584d47b50da5 /apps/app_exec.c | |
parent | 52fb5814943bd6d7d314d8f88dbd71b2c8d61c24 (diff) |
revert my pass through the tree to remove checks of the result of ast_strdupa
(revisions 8378 through 8381)
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@8387 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'apps/app_exec.c')
-rw-r--r-- | apps/app_exec.c | 33 |
1 files changed, 19 insertions, 14 deletions
diff --git a/apps/app_exec.c b/apps/app_exec.c index b2a45dc93..9759455ac 100644 --- a/apps/app_exec.c +++ b/apps/app_exec.c @@ -73,22 +73,27 @@ static int exec_exec(struct ast_channel *chan, void *data) /* Check and parse arguments */ if (data) { - s = ast_strdupa(data); - appname = strsep(&s, "("); + s = ast_strdupa((char *)data); 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, 1); - } else { - ast_log(LOG_WARNING, "Could not find application (%s)\n", appname); - res = -1; + 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, 1); + } else { + ast_log(LOG_WARNING, "Could not find application (%s)\n", appname); + res = -1; + } } + } else { + ast_log(LOG_ERROR, "Out of memory\n"); + res = -1; } } |