From 45be9263e91b39ad4676a6e7885608706bcf0ceb Mon Sep 17 00:00:00 2001
From: rswindell <>
Date: Tue, 21 Oct 2003 22:32:59 +0000
Subject: [PATCH] Create new xtrn.misc bit: XTRN_PAUSE, which controls whether
 a screen pause is forced when an online external program (door) exits.
 Default is off.

---
 src/sbbs3/sbbsdefs.h   | 1 +
 src/sbbs3/xtrn_sec.cpp | 3 ++-
 2 files changed, 3 insertions(+), 1 deletion(-)

diff --git a/src/sbbs3/sbbsdefs.h b/src/sbbs3/sbbsdefs.h
index 9f90b390e5..1529281a37 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 8e687e9cfc..1fbfe0b220 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; 
-- 
GitLab