diff --git a/arm9/source/godmode.c b/arm9/source/godmode.c index 3dae7d8..39b888f 100644 --- a/arm9/source/godmode.c +++ b/arm9/source/godmode.c @@ -106,6 +106,8 @@ u32 BootFirmHandler(const char* bootpath, bool verbose, bool delete) { // boot the FIRM (if we got a proper fixpath) if (*fixpath) { if (delete) PathDelete(bootpath); + DeinitExtFS(); + DeinitSDCardFS(); PXI_DoCMD(PXI_SET_VMODE, (u32[]){1}, 1); PXI_DoCMD(PXI_LEGACY_MODE, NULL, 0); BootFirm((FirmHeader*) firm, fixpath); diff --git a/arm9/source/utils/scripting.c b/arm9/source/utils/scripting.c index 4352736..423db9b 100644 --- a/arm9/source/utils/scripting.c +++ b/arm9/source/utils/scripting.c @@ -1417,6 +1417,8 @@ bool run_cmd(cmd_id id, u32 flags, char** argv, char* err_str) { snprintf(fixpath, 256, "%s%s", (*argv[0] == '0') ? "sdmc" : "nand", argv[0] + 1); else strncpy(fixpath, argv[0], 256); fixpath[255] = '\0'; + DeinitExtFS(); + DeinitSDCardFS(); PXI_DoCMD(PXI_SET_VMODE, (u32[]){1}, 1); PXI_DoCMD(PXI_LEGACY_MODE, NULL, 0); BootFirm((FirmHeader*)(void*)firm, fixpath);