changeset 210:e8d264bda65e src

(broken) still cells with zero still time can also appear in the middle of a PGC (fixes "Red Dragon" RC2 scene selection)
author mroi
date Sun, 03 Aug 2003 09:40:58 +0000
parents 80078f2c53f6
children 7eda95524e83
files vm.c
diffstat 1 files changed, 5 insertions(+), 7 deletions(-) [+]
line wrap: on
line diff
--- a/vm.c	Fri Jun 27 13:41:42 2003 +0000
+++ b/vm.c	Sun Aug 03 09:40:58 2003 +0000
@@ -429,14 +429,12 @@
   position->still = (vm->state).pgc->cell_playback[(vm->state).cellN - 1].still_time;
   position->block = (vm->state).blockN;
 
-  /* still already detrmined or not at PGC end */
-  if (position->still || (vm->state).cellN < (vm->state).pgc->nr_of_cells)
+  /* handle PGC stills at PGC end */
+  if ((vm->state).cellN == (vm->state).pgc->nr_of_cells && (vm->state).pgc->still_time)
+    position->still += (vm->state).pgc->still_time;
+  /* still already determined */
+  if (position->still)
     return;
-  /* handle PGC stills */
-  if ((vm->state).pgc->still_time) {
-    position->still = (vm->state).pgc->still_time;
-    return;
-  }
   /* This is a rough fix for some strange still situations on some strange DVDs.
    * There are discs (like the German "Back to the Future" RC2) where the only
    * indication of a still is a cell playback time higher than the time the frames