diff --git a/src/sbbs3/writemsg.cpp b/src/sbbs3/writemsg.cpp
index 256d11246c5e450c6d5c1aecc392b50c4042efa8..41759bc256c90ddcbd4c9e740cef842b2bd6eae5 100644
--- a/src/sbbs3/writemsg.cpp
+++ b/src/sbbs3/writemsg.cpp
@@ -549,8 +549,7 @@ bool sbbs_t::writemsg(const char *fname, const char *top, char *title, long mode
 			while(!feof(sig)) {
 				if(!fgets(str,sizeof(str),sig))
 					break;
-				fputs(str,stream);
-				l+=strlen(str);	/* byte counter */
+				l+=fprintf(stream,"%s\r\n",str);
 				lines++;		/* line counter */
 			}
 			fclose(sig);