From a67e593e668dc97dc0c4bd93a2f9e56dfdaaeec8 Mon Sep 17 00:00:00 2001 From: Russell Bryant Date: Mon, 17 Sep 2007 20:00:32 +0000 Subject: [PATCH] Initialize some memory to fix crashes when leaving voicemail. This problem was fixed by running Asterisk under valgrind. (closes issue #10746, reported by arcivanov, patched by me) *** IMPORTANT NOTE: We need to check to see if this same bug exists elsewhere. git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@82644 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- apps/app_voicemail.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/apps/app_voicemail.c b/apps/app_voicemail.c index 4c41ce445c..d3d29e6065 100644 --- a/apps/app_voicemail.c +++ b/apps/app_voicemail.c @@ -1783,6 +1783,8 @@ static void make_email_file(FILE *p, char *srcemail, struct ast_vm_user *vmu, in #define ENDL "\n" #endif + memset(&tm, 0, sizeof(tm)); + gethostname(host, sizeof(host) - 1); if (strchr(srcemail, '@')) ast_copy_string(who, srcemail, sizeof(who)); @@ -2049,8 +2051,12 @@ static int get_date(char *s, int len) { struct tm tm; time_t t; - t = time(0); + + time(&t); + memset(&tm, 0, sizeof(tm)); + ast_localtime(&t, &tm, NULL); + return strftime(s, len, "%a %b %e %r %Z %Y", &tm); }