TraceBullet/vba-rerecording

Movie playing/post-end modes bug

Closed this issue · 5 comments

What steps will reproduce the problem?
1. Open a movie file in read only mode
2. Load a savestate that is inconsistent with the current movie

What is the expected output? What do you see instead?

The movie should open the dialog "Failed to open movie snapshot; snapshot 
inconsistent with movie" then it should go back to the previous frame and let 
the movie play from there. However, what it really does is allow the user to 
control the movie from that point. Afterwards, the frame number will continue 
to increase after the movie is finished! so your movie will play a frame which 
is after the EOF. If you now switch to read + write mode, the movie will 
neither read nor write. It may display something like "994 / 655 (edit)" like 
in the attachment. Afterwards, when you play back the movie, it will only go to 
frame 665 in this case.

What version of the product are you using? On what operating system?

VBA v23.4 svn 318

Please provide any additional information below.

Look, this really needs to be fixed pronto. I've personally lost a lot of work 
to this bug.

Original issue reported on code.google.com by andrewjpritchard@gmail.com on 10 Jan 2011 at 3:58

Attachments:

[deleted comment]
Sorry, I got the steps for reproduction wrong. All you need to do is load a 
savestate on the final frame of a movie. I.e. record movie, Save a state, end 
movie, play movie in read only mode, load state, bug

Original comment by andrewjpritchard@gmail.com on 10 Jan 2011 at 4:08

Sorry, this bug is in fact that the emulator incorrectly switches to the 
alternative movie post-end mode (Tools->Movie->When Movie Ends) when you load a 
savestate under the normal mode, while your loss of work was resulted from, 
according to your description, misusing the rerecording feature unfortunately. 
And the current implementation of the (re-)recording feature is bullet-proof in 
the sense of corruption-proof, instead of misusage-proof.

To make things clear, under the current (reads: legacy) Laws of TAS, simply 
toggling the Read-Only flag on/off doesn't change the movie play/record mode at 
all. And what Read-Only on/off does is to allow switching correspondingly to 
play/record mode when and only when you load a movie savestate. I won't deny 
that this is counter-inituitive.

Only when you see the frame counter in the format " number ", you are working 
under the Recording mode. If you see anything like " abc / xyz ", you are not. 
The "(edit)" flag under Playing mode might be misleading as it just indicates 
Read-Only is off, though it is quite the standard notation.

Instead of switching R/W modes, I recommend you use Tools->Movie->Resume/Exit 
Recording, which is much more intuitive to understand and more convenient to 
use. You may feel like to assign a hotkey to it.

An annoying bug, will be fixed soon. Perhaps the display text should be 
modified, too.

Original comment by aquan...@gmail.com on 17 Jan 2011 at 12:20

  • Changed title: Movie playing/post-end modes bug
  • Changed state: Accepted
I think this has been resolved. It requires testing though.

Original comment by aquan...@gmail.com on 22 Jan 2011 at 6:25

  • Changed state: Started
  • Added labels: Priority-Low
  • Removed labels: Priority-Medium
I think this is resolved.

Original comment by aquan...@gmail.com on 31 May 2011 at 3:50

  • Changed state: Fixed