From: Michael R. <mr...@pr...> - 2002-11-18 13:07:34
|
Update of /cvsroot/xine/xine-lib/src/demuxers In directory sc8-pr-cvs1:/tmp/cvs-serv10831 Modified Files: demux_mpeg_block.c Log Message: resort the checks so that DVD playback finally works (without eating the first stillframes) Index: demux_mpeg_block.c =================================================================== RCS file: /cvsroot/xine/xine-lib/src/demuxers/demux_mpeg_block.c,v retrieving revision 1.143 retrieving revision 1.144 diff -u -r1.143 -r1.144 --- demux_mpeg_block.c 18 Nov 2002 11:44:55 -0000 1.143 +++ demux_mpeg_block.c 18 Nov 2002 13:07:29 -0000 1.144 @@ -1063,28 +1063,30 @@ mrl = input->get_mrl (input); - ending = strrchr(mrl, '.'); - - if (!ending) { - free (this->scratch_base); - free (this); - return NULL; - } - if ( (!strncasecmp (ending, ".vob", 4)) || - (!strncmp((ending + 3), "mpeg2", 5)) || - (!strncmp((ending + 3), "mpeg1", 5)) ) { - this->blocksize = 2048; - demux_mpeg_block_accept_input(this, input); - } else if(!strncmp(mrl, "vcd", 3)) { + if(!strncmp(mrl, "vcd", 3)) { this->blocksize = 2324; demux_mpeg_block_accept_input (this, input); } else if(!strncmp(mrl, "dvd", 3)) { this->blocksize = 2048; demux_mpeg_block_accept_input (this, input); } else { - free (this->scratch_base); - free (this); - return NULL; + ending = strrchr(mrl, '.'); + + if (!ending) { + free (this->scratch_base); + free (this); + return NULL; + } + if ( (!strncasecmp (ending, ".vob", 4)) || + (!strncmp((ending + 3), "mpeg2", 5)) || + (!strncmp((ending + 3), "mpeg1", 5)) ) { + this->blocksize = 2048; + demux_mpeg_block_accept_input(this, input); + } else { + free (this->scratch_base); + free (this); + return NULL; + } } } break; |