diff --git a/src/sbbs3/qwktomsg.cpp b/src/sbbs3/qwktomsg.cpp
index dbe7035700b4a8dee260596452a8a43dd501a8dc..7354362fdb354e945a22a858960bf530aaead8bf 100644
--- a/src/sbbs3/qwktomsg.cpp
+++ b/src/sbbs3/qwktomsg.cpp
@@ -259,12 +259,12 @@ bool sbbs_t::qwk_import_msg(FILE *qwk_fp, char *hdrblk, uint blocks
 		&& sub_op(subnum))
 		msg->hdr.attr|=MSG_PERMANENT;
 
-	if(!(useron.rest&FLAG('Q')) && !fromhub && msg->hdr.when_written.zone==0)
-		msg->hdr.when_written.zone=sys_timezone(&cfg);
-
 	msg->hdr.when_imported.time=time32(NULL);
 	msg->hdr.when_imported.zone=sys_timezone(&cfg);
 
+	if(!(useron.rest&FLAG('Q')) && !fromhub && msg->hdr.when_written.zone==0)
+		msg->hdr.when_written = msg->hdr.when_imported;
+
 	hdrblk[116]=0;	// don't include number of blocks in "re: msg number"
 	if(!(useron.rest&FLAG('Q')) && !fromhub)
 		msg->hdr.thread_back=atol((char *)hdrblk+108);