[Asterisk-cvs] asterisk/apps app_voicemail.c,1.55.2.8,1.55.2.9

markster at lists.digium.com markster at lists.digium.com
Wed Mar 31 14:11:26 CST 2004


Update of /usr/cvsroot/asterisk/apps
In directory mongoose.digium.com:/tmp/cvs-serv10378/apps

Modified Files:
      Tag: v1-0_stable
	app_voicemail.c 
Log Message:
Backport voicemail fixes for bug #1326


Index: app_voicemail.c
===================================================================
RCS file: /usr/cvsroot/asterisk/apps/app_voicemail.c,v
retrieving revision 1.55.2.8
retrieving revision 1.55.2.9
diff -u -d -r1.55.2.8 -r1.55.2.9
--- app_voicemail.c	22 Mar 2004 15:48:04 -0000	1.55.2.8
+++ app_voicemail.c	31 Mar 2004 19:10:08 -0000	1.55.2.9
@@ -3328,16 +3328,21 @@
 							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 timezone definition at line %d\n", var->lineno);
+									free(z);
 								}
 							} else {
 								ast_log(LOG_WARNING, "Out of memory while reading voicemail config\n");




More information about the svn-commits mailing list