On 07/10/2012 11:59 AM, Diego Biurrun wrote: > On Tue, Jul 10, 2012 at 05:16:06AM +0200, Luca Barbato wrote: >> >> --- a/libavformat/mxfdec.c >> +++ b/libavformat/mxfdec.c >> @@ -1873,6 +1873,9 @@ static int mxf_read_header(AVFormatContext *s) >> /* next partition pack - keep going, seek to previous partition >> or stop */ >> if(mxf_parse_handle_partition_or_eof(mxf) <= 0) >> break; >> + else if (mxf->parsing_backward) >> + continue; >> + /* we're still parsing forward. proceed to parsing this >> partition pack */ >> } > > The comment looks misplaced after the code.
It is correct, assumed I understand completely how this two direction parsing works. Basically once you parse an essence you run the parser backwards. Depending on where you are while that happens you might end up parsing the next pack instead of going back. The added lines ensure you keep parsing backwards instead moving to the next partition. I'm a bit curious about this format since this two direction parsing seems quite original. lu -- Luca Barbato Gentoo/linux http://dev.gentoo.org/~lu_zero _______________________________________________ libav-devel mailing list libav-devel@libav.org https://lists.libav.org/mailman/listinfo/libav-devel