diff --git a/src/utils.ts b/src/utils.ts index 466f70b..0b49fc0 100644 --- a/src/utils.ts +++ b/src/utils.ts @@ -27,13 +27,17 @@ export async function sleep(ms: number): Promise { export async function checkIfConfigIsBroken(): Promise { try { - let rawdata = fs.readFileSync(getConfigLocation(), "utf-8"); - JSON.parse(rawdata); + let settingsData = fs.readFileSync(getConfigLocation(), "utf-8"); + JSON.parse(settingsData); console.log("Config is fine"); + let windowData = fs.readFileSync(getWindowStateLocation(), "utf-8"); + JSON.parse(windowData); + console.log("Window config is fine"); } catch (e) { console.error(e); console.log("Detected a corrupted config"); setup(); + fs.writeFileSync(getWindowStateLocation(), "{}", "utf-8"); dialog.showErrorBox( "Oops, something went wrong.", "ArmCord has detected that your configuration file is corrupted, please restart the app and set your settings again. If this issue persists, report it on the support server/Github issues." @@ -215,6 +219,11 @@ export interface WindowState { y: number; isMaximized: boolean; } +function getWindowStateLocation() { + const userDataPath = app.getPath("userData"); + const storagePath = path.join(userDataPath, "/storage/"); + return `${storagePath}window.json`; +} export async function setWindowState(object: WindowState): Promise { const userDataPath = app.getPath("userData"); const storagePath = path.join(userDataPath, "/storage/");