summaryrefslogtreecommitdiff
path: root/apps
diff options
context:
space:
mode:
authorTilghman Lesher <tilghman@meg.abyt.es>2006-04-13 20:40:23 +0000
committerTilghman Lesher <tilghman@meg.abyt.es>2006-04-13 20:40:23 +0000
commit492e68dab38934858534515b25821c02f04ed169 (patch)
treee63a929fda1ba1281f95ea931c3c08b28ac1b0bb /apps
parent4897c72d6b87de05d3f3590e9e1f26bbfd5d92fc (diff)
Merged revisions 19891 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2 ........ r19891 | tilghman | 2006-04-13 15:37:50 -0500 (Thu, 13 Apr 2006) | 2 lines Bug 6947 - Allow vm broadcasts to more than 256 characters worth of mailboxes ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@19892 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'apps')
-rw-r--r--apps/app_voicemail.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/apps/app_voicemail.c b/apps/app_voicemail.c
index ee726f355..ae061de3c 100644
--- a/apps/app_voicemail.c
+++ b/apps/app_voicemail.c
@@ -5604,7 +5604,7 @@ static int vm_exec(struct ast_channel *chan, void *data)
{
int res = 0;
struct localuser *u;
- char tmp[256];
+ char *tmp;
struct leave_vm_options leave_options;
struct ast_flags flags = { 0 };
char *opts[OPT_ARG_ARRAY_SIZE];
@@ -5621,7 +5621,12 @@ static int vm_exec(struct ast_channel *chan, void *data)
ast_answer(chan);
if (!ast_strlen_zero(data)) {
- ast_copy_string(tmp, data, sizeof(tmp));
+ tmp = ast_strdupa((char *)data);
+ if (!tmp) {
+ ast_log(LOG_ERROR, "Out of memory\n");
+ LOCAL_USER_REMOVE(u);
+ return -1;
+ }
AST_STANDARD_APP_ARGS(args, tmp);
if (args.argc == 2) {
if (ast_app_parse_options(vm_app_options, &flags, opts, args.argv1)) {
@@ -5657,6 +5662,7 @@ static int vm_exec(struct ast_channel *chan, void *data)
}
}
} else {
+ char tmp[256];
res = ast_app_getdata(chan, "vm-whichbox", tmp, sizeof(tmp) - 1, 0);
if (res < 0) {
LOCAL_USER_REMOVE(u);