# HG changeset patch # User mroi # Date 1059903658 0 # Node ID e8d264bda65ef8994e3d0394ce110bf5c2a644d5 # Parent 80078f2c53f6fc0219a94cc816072b8aaabfd82a (broken) still cells with zero still time can also appear in the middle of a PGC (fixes "Red Dragon" RC2 scene selection) diff -r 80078f2c53f6 -r e8d264bda65e vm.c --- 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