[FFmpeg-devel] [PATCH] libavfilter: avoid UB nullptr-with-offset.

Jeremy Leconte jleconte at google.com
Tue Feb 16 18:13:36 EET 2021


You're right, it's just a case of NULL + 0.
The problem is that it gets caught by clang -fsanitize=undefined.

On Tue, Feb 16, 2021 at 4:59 PM Andreas Rheinhardt <
andreas.rheinhardt at gmail.com> wrote:

> Jeremy Leconte:
> > ---
> >  libavfilter/vf_scale.c | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/libavfilter/vf_scale.c b/libavfilter/vf_scale.c
> > index 58eee96744..98cef5eb4b 100644
> > --- a/libavfilter/vf_scale.c
> > +++ b/libavfilter/vf_scale.c
> > @@ -631,7 +631,7 @@ static int scale_slice(AVFilterLink *link, AVFrame
> *out_buf, AVFrame *cur_pic, s
> >      int in_stride[4],out_stride[4];
> >      int i;
> >
> > -    for (i=0; i<4; i++) {
> > +    for (i=0; i<4 && cur_pic->data[i] != NULL; i++) {
> >          int vsub= ((i+1)&2) ? scale->vsub : 0;
> >           in_stride[i] = cur_pic->linesize[i] * mul;
> >          out_stride[i] = out_buf->linesize[i] * mul;
> >
> Is this just a case of NULL + 0 or is the offset != 0?
>
> - Andreas
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel at ffmpeg.org
> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>
> To unsubscribe, visit link above, or email
> ffmpeg-devel-request at ffmpeg.org with subject "unsubscribe".


More information about the ffmpeg-devel mailing list