aboutsummaryrefslogtreecommitdiffstats
path: root/funcs/func_strings.c
diff options
context:
space:
mode:
authorrussell <russell@f38db490-d61c-443f-a65b-d21fe96a405b>2006-01-21 17:50:04 +0000
committerrussell <russell@f38db490-d61c-443f-a65b-d21fe96a405b>2006-01-21 17:50:04 +0000
commitb14bdc5a1211fa53add7d87b9444b56576d6d2d8 (patch)
treea0057e266407ad019e0b495dd566584d47b50da5 /funcs/func_strings.c
parent52fb5814943bd6d7d314d8f88dbd71b2c8d61c24 (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 'funcs/func_strings.c')
-rw-r--r--funcs/func_strings.c21
1 files changed, 21 insertions, 0 deletions
diff --git a/funcs/func_strings.c b/funcs/func_strings.c
index 447ec8fb5..9ea811f62 100644
--- a/funcs/func_strings.c
+++ b/funcs/func_strings.c
@@ -52,6 +52,11 @@ static char *function_fieldqty(struct ast_channel *chan, char *cmd, char *data,
);
parse = ast_strdupa(data);
+ if (!parse) {
+ ast_log(LOG_ERROR, "Out of memory\n");
+ ast_copy_string(buf, "0", len);
+ return buf;
+ }
AST_STANDARD_APP_ARGS(args, parse);
if (args.delim) {
@@ -86,6 +91,10 @@ static char *builtin_function_filter(struct ast_channel *chan, char *cmd, char *
char *outbuf=buf;
parse = ast_strdupa(data);
+ if (!parse) {
+ ast_log(LOG_ERROR, "Out of memory");
+ return "";
+ }
AST_STANDARD_APP_ARGS(args, parse);
@@ -132,6 +141,10 @@ static char *builtin_function_regex(struct ast_channel *chan, char *cmd, char *d
ast_copy_string(buf, "0", len);
parse = ast_strdupa(data);
+ if (!parse) {
+ ast_log(LOG_ERROR, "Out of memory in %s(%s)\n", cmd, data);
+ return buf;
+ }
AST_NONSTANDARD_APP_ARGS(args, parse, '"');
@@ -172,6 +185,10 @@ static void builtin_function_array(struct ast_channel *chan, char *cmd, char *da
var = ast_strdupa(data);
value2 = ast_strdupa(value);
+ if (!var || !value2) {
+ ast_log(LOG_ERROR, "Out of memory\n");
+ return;
+ }
/* The functions this will generally be used with are SORT and ODBC_*, which
* both return comma-delimited lists. However, if somebody uses literal lists,
@@ -260,6 +277,10 @@ static char *acf_strftime(struct ast_channel *chan, char *cmd, char *data, char
}
parse = ast_strdupa(data);
+ if (!parse) {
+ ast_log(LOG_ERROR, "Out of memory\n");
+ return buf;
+ }
AST_STANDARD_APP_ARGS(args, parse);