summaryrefslogtreecommitdiff
path: root/apps
diff options
context:
space:
mode:
authorMatthew Nicholson <mnicholson@digium.com>2009-11-30 21:31:55 +0000
committerMatthew Nicholson <mnicholson@digium.com>2009-11-30 21:31:55 +0000
commit31848bcdd1210fc71ba90d8c47749782177c6096 (patch)
tree008791fdc6f99851a46ac43647ade73a40f3bbe7 /apps
parent936a2bd20247762c5016e414d0d60cd3ee53d6eb (diff)
Merged revisions 231614 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r231614 | mnicholson | 2009-11-30 15:11:44 -0600 (Mon, 30 Nov 2009) | 8 lines Remove duplicate entries from voicemail format lists. This prevents app_voicemail from entering an infinite loop when the same format is specified twice in the format list. (closes issue #15625) Reported by: Shagg63 Tested by: mnicholson Review: https://reviewboard.asterisk.org/r/429/ ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@231688 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'apps')
-rw-r--r--apps/app_voicemail.c12
1 files changed, 10 insertions, 2 deletions
diff --git a/apps/app_voicemail.c b/apps/app_voicemail.c
index a69b306f2..673990ca4 100644
--- a/apps/app_voicemail.c
+++ b/apps/app_voicemail.c
@@ -10617,7 +10617,7 @@ static int load_config(int reload)
char *cat;
struct ast_variable *var;
const char *val;
- char *q, *stringp;
+ char *q, *stringp, *tmp;
int x;
int tmpadsi[4];
struct ast_flags config_flags = { reload ? CONFIG_FLAG_FILEUNCHANGED : 0 };
@@ -10926,8 +10926,16 @@ static int load_config(int reload)
}
val = ast_variable_retrieve(cfg, "general", "format");
- if (!val)
+ if (!val) {
val = "wav";
+ } else {
+ tmp = ast_strdupa(val);
+ val = ast_format_str_reduce(tmp);
+ if (!val) {
+ ast_log(LOG_ERROR, "Error processing format string, defaulting to format 'wav'\n");
+ val = "wav";
+ }
+ }
ast_copy_string(vmfmts, val, sizeof(vmfmts));
skipms = 3000;