Movies - fix a logical flaw in a case in movie finished mode. While in movie finished mode, a timeline check should still be done (if in read-only mode) before loading a state from a different timeline (even if that savestate is a post-movie savestate). This matches behavior in FCEUX 2.1.6 (all versions of FCEUX and BizHawk until now have this bug)
This commit is contained in:
parent
f3c68f2f3f
commit
ac6cf7a18d
|
@ -720,20 +720,7 @@ namespace BizHawk.MultiClient
|
|||
return true;
|
||||
}
|
||||
|
||||
if (stateFrame > l.Length) //stateFrame is greater than state input log, so movie finished mode
|
||||
{
|
||||
if (Mode == MOVIEMODE.PLAY || Mode == MOVIEMODE.FINISHED)
|
||||
{
|
||||
Mode = MOVIEMODE.FINISHED;
|
||||
return true;
|
||||
}
|
||||
else
|
||||
return false; //For now throw an error if recording, ideally what should happen is that the state gets loaded, and the movie set to movie finished, the movie at its current state is preserved and the state is loaded just fine. This should probably also only happen if checktimelines passes
|
||||
}
|
||||
else if (Mode == MOVIEMODE.FINISHED)
|
||||
{
|
||||
Mode = MOVIEMODE.PLAY;
|
||||
}
|
||||
|
||||
|
||||
if (stateFrame == 0)
|
||||
{
|
||||
|
@ -760,6 +747,24 @@ namespace BizHawk.MultiClient
|
|||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
if (stateFrame > l.Length) //stateFrame is greater than state input log, so movie finished mode
|
||||
{
|
||||
if (Mode == MOVIEMODE.PLAY || Mode == MOVIEMODE.FINISHED)
|
||||
{
|
||||
Mode = MOVIEMODE.FINISHED;
|
||||
return true;
|
||||
}
|
||||
else
|
||||
return false; //For now throw an error if recording, ideally what should happen is that the state gets loaded, and the movie set to movie finished, the movie at its current state is preserved and the state is loaded just fine. This should probably also only happen if checktimelines passes
|
||||
}
|
||||
else if (Mode == MOVIEMODE.FINISHED)
|
||||
{
|
||||
Mode = MOVIEMODE.PLAY;
|
||||
}
|
||||
|
||||
reader.Close();
|
||||
return true;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue