diff --git a/src/ts/server/settings.ts b/src/ts/server/settings.ts index 2cdf645..e234561 100644 --- a/src/ts/server/settings.ts +++ b/src/ts/server/settings.ts @@ -14,8 +14,18 @@ const settingsPath = paths.pathTo('settings', `settings.json`); /* istanbul ignore next */ export async function loadSettings() { - const json = await readFileAsync(settingsPath, 'utf8'); - return JSON.parse(json) as Settings; + try { + const json = await readFileAsync(settingsPath, 'utf8'); + return JSON.parse(json) as Settings; + } catch (e) { + if (e === 'ENOENT') { + writeFileAsync(settingsPath, '{}', 'utf8'); + return {} as Settings; + } else { + console.log("Error reading settings file: " + e); + return {} as Settings; + } + } } /* istanbul ignore next */