Sophie

Sophie

distrib > Mandriva > 2009.1 > i586 > media > main-release-src > by-pkgid > 3837d6e6d6e4fc5e03616d6e4e2ddc8c > files > 27

sysvinit-2.86-11mdv2009.1.src.rpm

diff -ru sysvinit-2.86/src/utmpdump.c sysvinit-2.86.foo/src/utmpdump.c
--- sysvinit-2.86/src/utmpdump.c	2000-09-12 16:14:24.000000000 -0500
+++ sysvinit-2.86.foo/src/utmpdump.c	2008-12-08 15:37:51.000000000 -0500
@@ -81,18 +81,20 @@
 time_t
 strtotime(const char *s_time)
 {
-	struct tm *tm = malloc(sizeof(*tm));
+	struct tm tm;
+	
+	memset(&tm, '\0', sizeof(struct tm));
 
 	if (s_time[0] == ' ' || s_time[0] == '\0')
 		return (time_t)0;
 
-	strptime(s_time, "%a %b %d %T %Y", tm);
+	strptime(s_time, "%a %b %d %T %Y", &tm);
 
 	/* Cheesy way of checking for DST */
 	if (s_time[26] == 'D')
-		tm->tm_isdst = 1;
+		tm.tm_isdst = 1;
 
-	return mktime(tm);
+	return mktime(&tm);
 }
 
 #define cleanse(x) xcleanse(x, sizeof(x))