From a6883c69b2713d3b4cd4d1344482f3069272d1b2 Mon Sep 17 00:00:00 2001
From: "Rob Swindell (on Windows)" <rob@synchro.net>
Date: Mon, 25 Sep 2023 16:52:09 -0700
Subject: [PATCH] Fix off-by-one issue in previous commit, text.dat string
 numbers are 1-based

---
 src/sbbs3/load_cfg.c | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/src/sbbs3/load_cfg.c b/src/sbbs3/load_cfg.c
index 6ca8577f0f..4e774201bb 100644
--- a/src/sbbs3/load_cfg.c
+++ b/src/sbbs3/load_cfg.c
@@ -38,11 +38,16 @@ int 	lprintf(int level, const char *fmt, ...);	/* log output */
 /* readtext.c */
 char *	readtext(long *line, FILE *stream, long dflt);
 
+// Returns 0-based text string index
 int get_text_num(const char* id)
 {
 	int i;
-	if (isdigit(*id))
-		return atoi(id);
+	if (isdigit(*id)) {
+		i = atoi(id);
+		if (i < 1)
+			return TOTAL_TEXT;
+		return i - 1;
+	}
 	for (i = 0; i < TOTAL_TEXT; ++i)
 		if (strcmp(text_id[i], id) == 0)
 			break;
-- 
GitLab