From 22ef26acc16f2cf6e98da30a9be5c224a9de424b Mon Sep 17 00:00:00 2001
From: "Rob Swindell (on Windows 11)" <rob@synchro.net>
Date: Tue, 2 Jan 2024 12:54:41 -0800
Subject: [PATCH] Don't lose network config changes when hitting ESC at Save
 Changes prompt

---
 src/sbbs3/scfg/scfgnet.c | 29 +++++++++++++++++++++--------
 1 file changed, 21 insertions(+), 8 deletions(-)

diff --git a/src/sbbs3/scfg/scfgnet.c b/src/sbbs3/scfg/scfgnet.c
index 6150d41572..7f95f4f2bc 100644
--- a/src/sbbs3/scfg/scfgnet.c
+++ b/src/sbbs3/scfg/scfgnet.c
@@ -437,7 +437,14 @@ void net_cfg()
 					,"QWK Packet Networks",opt);
 				switch(i) {
 					case -1:	/* ESC */
+						i = save_changes(WIN_MID|WIN_SAV);
+						if(i == -1)
+							continue;
 						done=1;
+						if(i == 0) {
+							save_msgs_cfg(&cfg);
+							refresh_cfg(&cfg);
+						}
 						break;
 					case 1:
 						uifc.helpbuf=
@@ -580,7 +587,14 @@ void net_cfg()
 					,"FidoNet EchoMail and NetMail",opt);
 				switch(i) {
 					case -1:	/* ESC */
+						i = save_changes(WIN_MID|WIN_SAV);
+						if(i == -1)
+							continue;
 						done=1;
+						if(i == 0) {
+							save_msgs_cfg(&cfg);
+							refresh_cfg(&cfg);
+						}
 						break;
 					case 0:
 						uifc.helpbuf=
@@ -924,7 +938,14 @@ void net_cfg()
 					,"Internet E-mail",opt);
 				switch(i) {
 					case -1:	/* ESC */
+						i = save_changes(WIN_MID|WIN_SAV);
+						if(i == -1)
+							continue;
 						done=1;
+						if(i == 0) {
+							save_msgs_cfg(&cfg);
+							refresh_cfg(&cfg);
+						}
 						break;
 					case 0:
 						edit_sys_inetaddr(false, false);
@@ -1055,14 +1076,6 @@ void net_cfg()
 				}
 			}
 		}
-
-		i=save_changes(WIN_MID|WIN_SAV);
-		if(i==-1)
-			continue;
-		if(!i) {
-			save_msgs_cfg(&cfg);
-			refresh_cfg(&cfg);
-		}
 		free_msgs_cfg(&cfg);
 		free_main_cfg(&cfg);
 	}
-- 
GitLab