Index: mplayer.c =================================================================== RCS file: /cvsroot/mplayer/main/mplayer.c,v retrieving revision 1.701 diff -u -r1.701 mplayer.c --- mplayer.c 31 May 2003 21:50:21 -0000 1.701 +++ mplayer.c 1 Jun 2003 20:30:30 -0000 @@ -3426,11 +3426,11 @@ // DVD sub: if(vo_config_count && vo_spudec) { unsigned char* packet=NULL; - int len=1,timestamp; + int len,timestamp; current_module="spudec"; spudec_heartbeat(vo_spudec,90000*sh_video->timer); // Get a sub packet from the dvd or a vobsub and make a timestamp relative to sh_video->timer - while(len>0 && packet){ + do { // Vobsub len = 0; if(vo_vobsub) { @@ -3452,7 +3452,7 @@ } if(timestamp < 0) timestamp = 0; spudec_assemble(vo_spudec,packet,len,timestamp); - } + } while (len > 0 && packet); /* detect wether the sub has changed or not */ if(spudec_changed(vo_spudec))