diff --git a/src/sbbs3/putmsg.cpp b/src/sbbs3/putmsg.cpp
index e2b4b6f084cb68c8ff5b616a12e4edecd7f57fe5..01fa98885b4826c65c6e286b4b042977952c6de8 100644
--- a/src/sbbs3/putmsg.cpp
+++ b/src/sbbs3/putmsg.cpp
@@ -247,6 +247,8 @@ char sbbs_t::putmsg(const char *buf, long mode)
 			if(str[l]==ESC && str[l+1]=='$')    /* WIP command */
 				lncntr=0;
 			if(str[l]=='@' && !(mode&P_NOATCODES)) {
+				if(memcmp(str+l, "@EOF@", 5) == 0)
+					break;
 				/* In HTML mode, defer PAUSE and MORE to end and supress message */
 				if(mode&P_HTML) {
 					if(!memcmp(str+l,"@MORE@",6)) {