diff --git a/src/sbbs3/date_str.c b/src/sbbs3/date_str.c
index e899342b26bcb14c2d42b231f148d760d6429516..f26895d73bb9ea20273c3d21d1bb0b7a88e220e6 100644
--- a/src/sbbs3/date_str.c
+++ b/src/sbbs3/date_str.c
@@ -261,6 +261,10 @@ char* timestr(scfg_t* cfg, time32_t t, char* str)
 	char** w = (cfg->text == NULL) ? (char**)wday : &cfg->text[Sun];
 	char** m = (cfg->text == NULL) ? (char**)mon : &cfg->text[Jan];
 
+	if(t == 0) {
+		strcpy(str, cfg->text == NULL ? "Never" : cfg->text[Never]);
+		return str;
+	}
 	if(localtime_r(&intime,&tm)==NULL) {
 		strcpy(str,"Invalid Time");
 		return(str);
diff --git a/src/sbbs3/file.cpp b/src/sbbs3/file.cpp
index e5322330c5ab25926fe0a8795bed890611ae74d2..05a9704f771d5f9418335cb84aa68773bf686b0b 100644
--- a/src/sbbs3/file.cpp
+++ b/src/sbbs3/file.cpp
@@ -91,7 +91,7 @@ void sbbs_t::showfileinfo(file_t* f, bool show_extdesc)
 		bprintf(P_TRUNCATE, text[FiDateUled],timestr(f->hdr.when_imported.time));
 		if(getfiletime(&cfg, f) > 0)
 			bprintf(P_TRUNCATE, text[FiFileDate],timestr(f->time));
-		bprintf(P_TRUNCATE, text[FiDateDled],f->hdr.last_downloaded ? timestr(f->hdr.last_downloaded) : "Never");
+		bprintf(P_TRUNCATE, text[FiDateDled], timestr(f->hdr.last_downloaded));
 		bprintf(P_TRUNCATE, text[FiTimesDled],f->hdr.times_downloaded);
 		ulong timetodl = gettimetodl(&cfg, f, cur_cps);
 		if(timetodl > 0)