Don't die on a bad voicemail conf timezone entry (bug #1326)

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@2591 65c4cc65-6c06-0410-ace0-fbb531ad65f3
1.0
Mark Spencer 22 years ago
parent 71e80e5f62
commit 4b02c78aaa

@ -3422,16 +3422,21 @@ static int load_config(void)
msg_format = ast_strdupa(var->value);
if (msg_format != NULL) {
timezone = strsep(&msg_format, "|");
strncpy(z->name, var->name, sizeof(z->name) - 1);
strncpy(z->timezone, timezone, sizeof(z->timezone) - 1);
strncpy(z->msg_format, msg_format, sizeof(z->msg_format) - 1);
z->next = NULL;
if (zones) {
zonesl->next = z;
zonesl = z;
if (msg_format) {
strncpy(z->name, var->name, sizeof(z->name) - 1);
strncpy(z->timezone, timezone, sizeof(z->timezone) - 1);
strncpy(z->msg_format, msg_format, sizeof(z->msg_format) - 1);
z->next = NULL;
if (zones) {
zonesl->next = z;
zonesl = z;
} else {
zones = z;
zonesl = z;
}
} else {
zones = z;
zonesl = z;
ast_log(LOG_WARNING, "Invalid tonezone definition at line %d\n", var->lineno);
free(z);
}
} else {
ast_log(LOG_WARNING, "Out of memory while reading voicemail config\n");

Loading…
Cancel
Save