From 31d236392673168bbe75382306a725b73d86a9f4 Mon Sep 17 00:00:00 2001 From: arpi Date: Sun, 9 Mar 2003 17:21:30 +0000 Subject: [PATCH] Redundant packet ignoring is RV30-only (at least frame-header flag 0x20 is) noticed by Balatoni Denes [sample files: pro: DISK1.RM contra: spygames-2MB.rmvb] git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@9554 b3059339-0415-0410-9bf9-f77b7e298cf2 --- libmpdemux/demux_real.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libmpdemux/demux_real.c b/libmpdemux/demux_real.c index 482eb0d59b..4e4ecfab46 100644 --- a/libmpdemux/demux_real.c +++ b/libmpdemux/demux_real.c @@ -593,7 +593,7 @@ got_video: if(dp_hdr->len!=vpkg_length-vpkg_offset) mp_msg(MSGT_DEMUX,MSGL_V,"warning! assembled.len=%d frag.len=%d total.len=%d \n",dp->len,vpkg_offset,vpkg_length-vpkg_offset); stream_read(demuxer->stream, dp_data+dp_hdr->len, vpkg_offset); - if(dp_data[dp_hdr->len]&0x20) --dp_hdr->chunks; else + if((dp_data[dp_hdr->len]&0x20) && (sh_video->format==0x30335652)) --dp_hdr->chunks; else dp_hdr->len+=vpkg_offset; len-=vpkg_offset; mp_dbg(MSGT_DEMUX,MSGL_DBG2, "fragment (%d bytes) appended, %d bytes left\n",vpkg_offset,len); @@ -609,7 +609,7 @@ got_video: if(dp_hdr->len!=vpkg_offset) mp_msg(MSGT_DEMUX,MSGL_V,"warning! assembled.len=%d offset=%d frag.len=%d total.len=%d \n",dp->len,vpkg_offset,len,vpkg_length); stream_read(demuxer->stream, dp_data+dp_hdr->len, len); - if(dp_data[dp_hdr->len]&0x20) --dp_hdr->chunks; else + if((dp_data[dp_hdr->len]&0x20) && (sh_video->format==0x30335652)) --dp_hdr->chunks; else dp_hdr->len+=len; len=0; break; // no more fragments in this chunk!