From 8f5f2fc206471f1188917f21934d8dfc27ec83f7 Mon Sep 17 00:00:00 2001 From: Sainan <63328889+Sainan@users.noreply.github.com> Date: Sat, 7 Jun 2025 02:15:35 -0700 Subject: [PATCH] chore: handle numbers in config administratorNames (#2117) Reviewed-on: https://onlyg.it/OpenWF/SpaceNinjaServer/pulls/2117 Co-authored-by: Sainan <63328889+Sainan@users.noreply.github.com> Co-committed-by: Sainan <63328889+Sainan@users.noreply.github.com> --- src/services/configWatcherService.ts | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/src/services/configWatcherService.ts b/src/services/configWatcherService.ts index 46c236ea..77c56d9a 100644 --- a/src/services/configWatcherService.ts +++ b/src/services/configWatcherService.ts @@ -27,9 +27,21 @@ fs.watchFile(configPath, () => { }); export const validateConfig = (): void => { - if (typeof config.administratorNames == "string") { - logger.info(`Updating config.json to make administratorNames an array.`); - config.administratorNames = [config.administratorNames]; + let modified = false; + if (config.administratorNames) { + if (!Array.isArray(config.administratorNames)) { + config.administratorNames = [config.administratorNames]; + modified = true; + } + for (let i = 0; i != config.administratorNames.length; ++i) { + if (typeof config.administratorNames[i] != "string") { + config.administratorNames[i] = String(config.administratorNames[i]); + modified = true; + } + } + } + if (modified) { + logger.info(`Updating config.json to fix some issues with it.`); void saveConfig(); } };