Hi Johwen, On Tue, May 31, 2011 at 6:22 PM, Johwen (Zhongwen) Chen <[email protected]> wrote: > diff -Nur asfdec.c asfdec_mod.c > > --- asfdec.c 2011-05-12 22:15:20.000000000 +0800 > > +++ asfdec_mod.c 2011-06-01 09:00:25.000000000 +0800 > > @@ -906,6 +906,9 @@ > > //printf("PacketLeftSize:%d Pad:%d Pos:%"PRId64"\n", > asf->packet_size_left, asf->packet_padsize, avio_tell(pb)); > > assert(ret>=0); > > /* fail safe */ > > + if(ret >= s->packet_size) > > + avio_skip(pb, s->packet_size); > > + else > > avio_skip(pb, ret); > > > > asf->packet_pos= avio_tell(pb); > > @@ -953,8 +956,8 @@ > > //printf("COMPRESS size %d %d %d ms:%d\n", > asf->packet_obj_size, asf->packet_frag_timestamp, asf->packet_size_left, > asf->packet_multi_size); > > } > > if( /*asf->packet_frag_size == asf->packet_obj_size*/ > > - asf_st->frag_offset + asf->packet_frag_size <= > asf_st->pkt.size > > - && asf_st->frag_offset + asf->packet_frag_size > > asf->packet_obj_size){ > > + (asf_st->frag_offset + asf->packet_frag_size <= > asf_st->pkt.size > > + && asf_st->frag_offset + asf->packet_frag_size > > asf->packet_obj_size)||asf->packet_obj_size <=0){ > > av_log(s, AV_LOG_INFO, "ignoring invalid packet_obj_size (%d %d > %d %d)\n", > > asf_st->frag_offset, asf->packet_frag_size, > > asf->packet_obj_size, asf_st->pkt.size);
What version (SVN revision or git revision) did you use? I suspect that this patch fixes a bug that we recently fixed: http://git.libav.org/?p=libav.git;a=commit;h=0bd433a916cd8d98fce47742fbf6d0f90ec941c4 and http://git.libav.org/?p=libav.git;a=commit;h=f8b1245922cf4c7692750e9198cf57598f9647d5 Thanks, Ronald _______________________________________________ libav-devel mailing list [email protected] https://lists.libav.org/mailman/listinfo/libav-devel
