diff options
Diffstat (limited to 'funcs/func_rand.c')
-rw-r--r-- | funcs/func_rand.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/funcs/func_rand.c b/funcs/func_rand.c index 196d2bad3..dbd82c941 100644 --- a/funcs/func_rand.c +++ b/funcs/func_rand.c @@ -55,7 +55,12 @@ static char *acf_rand_exec(struct ast_channel *chan, char *cmd, char *data, char LOCAL_USER_ACF_ADD(u); - s = ast_strdupa(data); + if (!(s = ast_strdupa(data))) { + ast_log(LOG_WARNING, "Out of memory\n"); + *buffer = '\0'; + LOCAL_USER_REMOVE(u); + return buffer; + } ast_app_separate_args(s, '|', args, sizeof(args) / sizeof(args[0])); |