[FFmpeg-devel] [PATCH] mxfdec: fix NULL pointer dereference in mxf_read_packet_old

Marton Balint cus at passwd.hu
Thu May 31 00:26:11 EEST 2018



On Thu, 17 Nov 2016, Andreas Cadhalpun wrote:

> Metadata streams have priv_data set to NULL.
>
> Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun at googlemail.com>
> ---
> libavformat/mxfdec.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/libavformat/mxfdec.c b/libavformat/mxfdec.c
> index a1a79ce..2ad0c28 100644
> --- a/libavformat/mxfdec.c
> +++ b/libavformat/mxfdec.c
> @@ -3135,7 +3135,7 @@ static int mxf_read_packet_old(AVFormatContext *s, AVPacket *pkt)
>                 if (mxf->nb_index_tables >= 1 && mxf->current_edit_unit < t->nb_ptses) {
>                     pkt->dts = mxf->current_edit_unit + t->first_dts;
>                     pkt->pts = t->ptses[mxf->current_edit_unit];
> -                } else if (track->intra_only) {
> +                } else if (track && track->intra_only) {
>                     /* intra-only -> PTS = EditUnit.
>                      * let utils.c figure out DTS since it can be < PTS if low_delay = 0 (Sony IMX30) */
>                     pkt->pts = mxf->current_edit_unit;

Was this patch really necessary? Because as far as I see, metadata streams 
(which have priv_data set to NULL) always have a AVMEDIA_TYPE_DATA 
st->codecpar->codec_type, and since this code calculates video pts, it 
never encounters a NULL track.

So is it OK to revert?

Thanks,
Marton


More information about the ffmpeg-devel mailing list