properly report savestate-load failure

This commit is contained in:
Arisotura
2022-01-06 22:43:00 +01:00
parent 211a1ed5f2
commit 1e2982481c
2 changed files with 9 additions and 4 deletions

View File

@ -807,11 +807,8 @@ bool DoSavestate(Savestate* file)
u32 console; u32 console;
file->Var32(&console); file->Var32(&console);
if (console != ConsoleType) if (console != ConsoleType)
{
file->Error = true;
return false; return false;
} }
}
file->VarArray(MainRAM, MainRAMMaxSize); file->VarArray(MainRAM, MainRAMMaxSize);
file->VarArray(SharedWRAM, SharedWRAMSize); file->VarArray(SharedWRAM, SharedWRAMSize);

View File

@ -304,8 +304,16 @@ bool LoadState(std::string filename)
failed = true; failed = true;
} }
bool res = NDS::DoSavestate(state);
delete state;
if (!res)
{
failed = true;
state = new Savestate("timewarp.mln", false);
NDS::DoSavestate(state); NDS::DoSavestate(state);
delete state; delete state;
}
if (failed) return false; if (failed) return false;