From d37f34baba6762ef5f5481f9f6a48f888ef0c610 Mon Sep 17 00:00:00 2001 From: Rob Swindell <rob@synchro.net> Date: Wed, 21 Sep 2022 09:50:12 -0700 Subject: [PATCH] Fix reading and writing of hotkey: sections in xtrn.ini Section suffix is the decimal ASCII value, not the character itself. Fix issue #440 as reported by Nelgin --- src/sbbs3/scfglib2.c | 2 +- src/sbbs3/scfgsave.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/sbbs3/scfglib2.c b/src/sbbs3/scfglib2.c index 443fd95ece..3a9afe472f 100644 --- a/src/sbbs3/scfglib2.c +++ b/src/sbbs3/scfglib2.c @@ -581,7 +581,7 @@ BOOL read_xtrn_cfg(scfg_t* cfg, char* error, size_t maxerrlen) return allocerr(error, maxerrlen, fname, "hotkey", sizeof(hotkey_t)); memset(cfg->hotkey[i],0,sizeof(hotkey_t)); - cfg->hotkey[i]->key = list[i][7]; + cfg->hotkey[i]->key = atoi(list[i] + 7); SAFECOPY(cfg->hotkey[i]->cmd, iniGetString(ini, section, "cmd", "", value)); } iniFreeStringList(list); diff --git a/src/sbbs3/scfgsave.c b/src/sbbs3/scfgsave.c index 8d43ec5ba8..6c31edb641 100644 --- a/src/sbbs3/scfgsave.c +++ b/src/sbbs3/scfgsave.c @@ -923,7 +923,7 @@ BOOL write_xtrn_cfg(scfg_t* cfg, int backup_level) } for(uint i=0; i<cfg->total_hotkeys; i++) { - SAFEPRINTF(name, "hotkey:%c", cfg->hotkey[i]->key); + SAFEPRINTF(name, "hotkey:%u", cfg->hotkey[i]->key); iniSetString(&ini, name, "cmd", cfg->hotkey[i]->cmd, NULL); } -- GitLab