From a4632f67d0b021bd3f591ce1a19d906e02d6ec3c Mon Sep 17 00:00:00 2001 From: DJ1TJOO Date: Sun, 14 Mar 2021 16:27:16 +0100 Subject: [PATCH] Fixed fs-job for modloader --- src/js/main.js | 9 ++++++--- src/js/modloader/modmanager.js | 9 ++++++--- 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/src/js/main.js b/src/js/main.js index 2985dd7e..07190e68 100644 --- a/src/js/main.js +++ b/src/js/main.js @@ -135,17 +135,20 @@ window.onload = async () => { let instance = undefined; let modFolderContents = []; if (G_IS_STANDALONE) { - modFolderContents = getIPCRenderer().send("fs-job", { + const dirResult = await getIPCRenderer().invoke("fs-job", { folder: "mods", type: "readDir", filename: "", - }).data; + }); + if (dirResult.success) modFolderContents = dirResult.data; + if (modFolderContents.includes("modpack.json")) { - instance = getIPCRenderer().send("fs-job", { + const instanceResult = await getIPCRenderer().invoke("fs-job", { folder: "mods", type: "read", filename: "modpack.json", }); + if (instanceResult.success) instance = JSON.parse(instanceResult.data); } } else { user = JSON.parse(localStorage.getItem("user")); diff --git a/src/js/modloader/modmanager.js b/src/js/modloader/modmanager.js index 827203a1..e061f647 100644 --- a/src/js/modloader/modmanager.js +++ b/src/js/modloader/modmanager.js @@ -91,12 +91,15 @@ export class ModManager { */ addMod(url, fromFile = false) { if (fromFile && G_IS_STANDALONE) { - return new Promise((resolve, reject) => { - const modCode = getIPCRenderer().send("fs-job", { + return new Promise(async (resolve, reject) => { + const modCodeResult = await getIPCRenderer().invoke("fs-job", { folder: "mods", type: "read", filename: url, - }).data; + }); + if (!modCodeResult.success) return reject("Mod is invalid"); + + const modCode = modCodeResult.data; const modScript = document.createElement("script"); modScript.textContent = modCode; modScript.type = "text/javascript";