From d51a04d190023a859f2fff40b9cda75eefc853b5 Mon Sep 17 00:00:00 2001
From: rswindell <>
Date: Tue, 1 Jun 2010 07:29:30 +0000
Subject: [PATCH] strftime() will throw an assertion in MSVC10 when passed an
 invalid struct tm (e.g. zeroed-out).

---
 src/sbbs3/js_global.c | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/src/sbbs3/js_global.c b/src/sbbs3/js_global.c
index 57ba4c65a4..6dd6b103aa 100644
--- a/src/sbbs3/js_global.c
+++ b/src/sbbs3/js_global.c
@@ -2955,9 +2955,8 @@ js_strftime(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval)
 	rc=JS_SUSPENDREQUEST(cx);
 	strcpy(str,"-Invalid time-");
 	t=i;
-	if(localtime_r(&t,&tm)==NULL)
-		memset(&tm,0,sizeof(tm));
-	strftime(str,sizeof(str),fmt,&tm);
+	if(localtime_r(&t,&tm)!=NULL)
+		strftime(str,sizeof(str),fmt,&tm);
 	JS_RESUMEREQUEST(cx, rc);
 
 	if((js_str=JS_NewStringCopyZ(cx, str))==NULL)
-- 
GitLab