case AST_ACTION_BACKLIST:
res = 0;
c = ast_strdupa(option->adata);
- if (c) {
- while((n = strsep(&c, ";")))
- if ((res = ast_streamfile(chan, n, chan->language)) || (res = ast_waitstream(chan, (option->action == AST_ACTION_BACKLIST) ? AST_DIGIT_ANY : "")))
- break;
- ast_stopstream(chan);
+ while ((n = strsep(&c, ";"))) {
+ if ((res = ast_streamfile(chan, n, chan->language)) || (res = ast_waitstream(chan, (option->action == AST_ACTION_BACKLIST) ? AST_DIGIT_ANY : "")))
+ break;
}
+ ast_stopstream(chan);
return res;
default:
ast_log(LOG_NOTICE, "Unknown dispatch function %d, ignoring!\n", option->action);
struct ast_custom_function *acfptr;
function = ast_strdupa(in);
- if (!function) {
- ast_log(LOG_ERROR, "Out of memory\n");
- return ret;
- }
if ((args = strchr(function, '('))) {
*args = '\0';
args++;
struct ast_custom_function *acfptr;
function = ast_strdupa(in);
- if (!function) {
- ast_log(LOG_ERROR, "Out of memory\n");
- return;
- }
if ((args = strchr(function, '('))) {
*args = '\0';
args++;
if (argc == 3) {
char *splitter = ast_strdupa(argv[2]);
/* is there a '@' character? */
- if (splitter && strchr(argv[2], '@')) {
+ if (strchr(argv[2], '@')) {
/* yes, split into exten & context ... */
exten = strsep(&splitter, "@");
context = splitter;
if (!ast_strlen_zero(data)) {
args = ast_strdupa(data);
- if (!args) {
- ast_log(LOG_ERROR, "Out of memory!\n");
- return -1;
- }
ast_app_parse_options(resetcdr_opts, &flags, NULL, args);
}
*/
static int pbx_builtin_gotoiftime(struct ast_channel *chan, void *data)
{
- int res=0;
+ int res = 0;
char *s, *ts;
struct ast_timing timing;
return -1;
}
- if ((s = ast_strdupa(data))) {
- ts = s;
+ ts = s = ast_strdupa(data);
- /* Separate the Goto path */
- strsep(&ts,"?");
+ /* Separate the Goto path */
+ strsep(&ts,"?");
- /* struct ast_include include contained garbage here, fixed by zeroing it on get_timerange */
- if (ast_build_timing(&timing, s) && ast_check_timing(&timing))
- res = pbx_builtin_goto(chan, (void *)ts);
- } else {
- ast_log(LOG_ERROR, "Memory Error!\n");
- }
+ /* struct ast_include include contained garbage here, fixed by zeroing it on get_timerange */
+ if (ast_build_timing(&timing, s) && ast_check_timing(&timing))
+ res = pbx_builtin_goto(chan, (void *)ts);
+
return res;
}
return -1;
}
- ptr1 = ast_strdupa(data);
-
- if (!ptr1) {
- ast_log(LOG_ERROR, "Out of Memory!\n");
- return -1;
- }
+ ptr2 = ptr1 = ast_strdupa(data);
- ptr2 = ptr1;
/* Separate the Application data ptr1 is the time spec ptr2 is the app|data */
strsep(&ptr2,"?");
- if(!ast_build_timing(&timing, ptr1)) {
+ if (!ast_build_timing(&timing, ptr1)) {
ast_log(LOG_WARNING, "Invalid Time Spec: %s\nCorrect usage: %s\n", ptr1, usage);
res = -1;
}
ast_log(LOG_WARNING, "Goto requires an argument (optional context|optional extension|priority)\n");
return -1;
}
- s = ast_strdupa(goto_string);
- stringp=s;
+ stringp = s = ast_strdupa(goto_string);
context = strsep(&stringp, "|");
exten = strsep(&stringp, "|");
if (!exten) {