[FFmpeg-devel] [PATCH 3/7] avformat/icodec: Factor failure code out in read_header()

Michael Niedermayer michael at niedermayer.cc
Fri Nov 13 19:02:43 EET 2020


On Fri, Nov 13, 2020 at 05:36:59PM +1100, Peter Ross wrote:
> On Wed, Nov 04, 2020 at 01:06:45AM +0100, Michael Niedermayer wrote:
> > Signed-off-by: Michael Niedermayer <michael at niedermayer.cc>
> > ---
> >  libavformat/icodec.c | 12 ++++++------
> >  1 file changed, 6 insertions(+), 6 deletions(-)
> > 
> > diff --git a/libavformat/icodec.c b/libavformat/icodec.c
> > index c061f3ec42..cf1e60815e 100644
> > --- a/libavformat/icodec.c
> > +++ b/libavformat/icodec.c
> > @@ -113,8 +113,7 @@ static int read_header(AVFormatContext *s)
> >          ico->images[i].size   = avio_rl32(pb);
> >          if (ico->images[i].size <= 0) {
> >              av_log(s, AV_LOG_ERROR, "Invalid image size %d\n", ico->images[i].size);
> > -            av_freep(&ico->images);
> > -            return AVERROR_INVALIDDATA;
> > +            goto fail;
> >          }
> >          ico->images[i].offset = avio_rl32(pb);
> >  
> > @@ -130,8 +129,7 @@ static int read_header(AVFormatContext *s)
> >              break;
> >          case 40:
> >              if (ico->images[i].size < 40) {
> > -                av_freep(&ico->images);
> > -                return AVERROR_INVALIDDATA;
> > +                goto fail;
> >              }
> >              st->codecpar->codec_id = AV_CODEC_ID_BMP;
> >              tmp = avio_rl32(pb);
> > @@ -143,12 +141,14 @@ static int read_header(AVFormatContext *s)
> >              break;
> >          default:
> >              avpriv_request_sample(s, "codec %d", codec);
> > -            av_freep(&ico->images);
> > -            return AVERROR_INVALIDDATA;
> > +            goto fail;
> >          }
> >      }
> >  
> >      return 0;
> > +fail:
> > +    av_freep(&ico->images);
> > +    return AVERROR_INVALIDDATA;
> >  }
> >  
> >  static int read_packet(AVFormatContext *s, AVPacket *pkt)
> > -- 
> > 2.17.1
> 
> looks good

will apply

thx

[...]

-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

The bravest are surely those who have the clearest vision
of what is before them, glory and danger alike, and yet
notwithstanding go out to meet it. -- Thucydides
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 195 bytes
Desc: not available
URL: <https://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20201113/5cf9226d/attachment.sig>


More information about the ffmpeg-devel mailing list