diff --git a/src/sbbs3/sbbsdefs.h b/src/sbbs3/sbbsdefs.h
index 9f90b390e5eef82e7f54ba58f3234cf828098aab..1529281a379e436a1ac23ea2c20b402a160f58ea 100644
--- a/src/sbbs3/sbbsdefs.h
+++ b/src/sbbs3/sbbsdefs.h
@@ -396,6 +396,7 @@ typedef enum {						/* Values for xtrn_t.event				*/
 #define XTRN_CHKTIME	(1<<16)		/* Check time online (EX_CHKTIME)		*/
 #define XTRN_LWRCASE	(1<<17)		/* Use lowercase drop-file names		*/
 #define XTRN_SH			(1<<18)		/* Use command shell to execute			*/
+#define XTRN_PAUSE		(1<<19)		/* Force a screen pause on exit			*/
 
 									/* Bits in cfg.xtrn_misc				*/
 #define XTRN_NO_MUTEX	(1<<0)		/* Do not use exec_mutex for FOSSIL VXD	*/
diff --git a/src/sbbs3/xtrn_sec.cpp b/src/sbbs3/xtrn_sec.cpp
index 8e687e9cfce10c2d151a5655e79b939b89e4c1ea..1fbfe0b2209db655a33868cf8c5b5d6508924f47 100644
--- a/src/sbbs3/xtrn_sec.cpp
+++ b/src/sbbs3/xtrn_sec.cpp
@@ -181,7 +181,8 @@ int sbbs_t::xtrn_sec()
 			}
 			exec_xtrn(usrxtrn[l]); 
 
-			lncntr=2;	/* force a pause before CLS */
+			if(cfg.xtrn[usrxtrn[l]]->misc&XTRN_PAUSE)
+				lncntr=2;	/* force a pause before CLS */
 		}
 		if(usrxsecs<2)
 			break;