From 980dad23c40f5716aba57f10daff19a13cd2b75b Mon Sep 17 00:00:00 2001
From: "Rob Swindell (on ChromeOS)" <rob@synchro.net>
Date: Sat, 1 Apr 2023 09:44:56 -0700
Subject: [PATCH] Display an error if sbbs.ini can't be opened, don't deref
 NULL pointer

CID 451182
---
 src/sbbs3/scfg/scfgnode.c | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/src/sbbs3/scfg/scfgnode.c b/src/sbbs3/scfg/scfgnode.c
index 15a7f6d873..17e7a05cde 100644
--- a/src/sbbs3/scfg/scfgnode.c
+++ b/src/sbbs3/scfg/scfgnode.c
@@ -46,9 +46,13 @@ void adjust_last_node()
 	SAFEPRINTF(prompt, "Update Terminal Server 'LastNode' value to %u", cfg.sys_nodes);
 	if(last_node < cfg.sys_nodes && uifc.confirm(prompt)) {
 		fp = iniOpenFile(ini_fname, /* modify */true);
-		iniSetUInteger(&ini, section, key, cfg.sys_nodes, NULL);
-		iniWriteFile(fp, ini);
-		iniCloseFile(fp);
+		if(fp == NULL)
+			uifc.msgf("Error %d opening %s", errno, ini_fname);
+		else {
+			iniSetUInteger(&ini, section, key, cfg.sys_nodes, NULL);
+			iniWriteFile(fp, ini);
+			iniCloseFile(fp);
+		}
 	}
 	iniFreeStringList(ini);
 }
-- 
GitLab