Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
View | Details | Raw Unified | Return to bug 239130
Collapse All | Expand All

(-)libmpdemux/demux_real.c (+3 lines)
Lines 947-952 Link Here
947
			    // last fragment!
947
			    // last fragment!
948
			    if(dp_hdr->len!=vpkg_length-vpkg_offset)
948
			    if(dp_hdr->len!=vpkg_length-vpkg_offset)
949
				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);
949
				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);
950
			    if (vpkg_offset > dp->len - sizeof(dp_hdr_t) - dp_hdr->len) vpkg_offset = dp->len - sizeof(dp_hdr_t) - dp_hdr->len;
950
            		    stream_read(demuxer->stream, dp_data+dp_hdr->len, vpkg_offset);
951
            		    stream_read(demuxer->stream, dp_data+dp_hdr->len, vpkg_offset);
951
			    if((dp_data[dp_hdr->len]&0x20) && (sh_video->format==0x30335652)) --dp_hdr->chunks; else
952
			    if((dp_data[dp_hdr->len]&0x20) && (sh_video->format==0x30335652)) --dp_hdr->chunks; else
952
			    dp_hdr->len+=vpkg_offset;
953
			    dp_hdr->len+=vpkg_offset;
Lines 970-975 Link Here
970
			// non-last fragment:
971
			// non-last fragment:
971
			if(dp_hdr->len!=vpkg_offset)
972
			if(dp_hdr->len!=vpkg_offset)
972
			    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);
973
			    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);
974
			if (len > dp->len - sizeof(dp_hdr_t) - dp_hdr->len) len = dp->len - sizeof(dp_hdr_t) - dp_hdr->len;
973
            		stream_read(demuxer->stream, dp_data+dp_hdr->len, len);
975
            		stream_read(demuxer->stream, dp_data+dp_hdr->len, len);
974
			if((dp_data[dp_hdr->len]&0x20) && (sh_video->format==0x30335652)) --dp_hdr->chunks; else
976
			if((dp_data[dp_hdr->len]&0x20) && (sh_video->format==0x30335652)) --dp_hdr->chunks; else
975
			dp_hdr->len+=len;
977
			dp_hdr->len+=len;
Lines 992-997 Link Here
992
		extra[0]=1; extra[1]=0; // offset of the first chunk
994
		extra[0]=1; extra[1]=0; // offset of the first chunk
993
		if(0x00==(vpkg_header&0xc0)){
995
		if(0x00==(vpkg_header&0xc0)){
994
		    // first fragment:
996
		    // first fragment:
997
		    if (len > dp->len - sizeof(dp_hdr_t)) len = dp->len - sizeof(dp_hdr_t);
995
		    dp_hdr->len=len;
998
		    dp_hdr->len=len;
996
		    stream_read(demuxer->stream, dp_data, len);
999
		    stream_read(demuxer->stream, dp_data, len);
997
		    ds->asf_packet=dp;
1000
		    ds->asf_packet=dp;

Return to bug 239130