diff mbox

[FFmpeg-devel] avformat/matroskadec: fix resource leak

Message ID 20170505195408.10632-1-lq@chinaffmpeg.org
State Superseded
Headers show

Commit Message

Steven Liu May 5, 2017, 7:54 p.m. UTC
Fixes Coverity CID: 1405453

Signed-off-by: Steven Liu <lq@chinaffmpeg.org>
---
 libavformat/matroskadec.c |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)

Comments

Hendrik Leppkes May 5, 2017, 11:59 a.m. UTC | #1
On Fri, May 5, 2017 at 9:54 PM, Steven Liu <lq@chinaffmpeg.org> wrote:
> Fixes Coverity CID: 1405453
>
> Signed-off-by: Steven Liu <lq@chinaffmpeg.org>
> ---
>  libavformat/matroskadec.c |    1 +
>  1 files changed, 1 insertions(+), 0 deletions(-)
>
> diff --git a/libavformat/matroskadec.c b/libavformat/matroskadec.c
> index 9e2c9bd..5282ef7 100644
> --- a/libavformat/matroskadec.c
> +++ b/libavformat/matroskadec.c
> @@ -3893,6 +3893,7 @@ static int webm_dash_manifest_cues(AVFormatContext *s, int64_t init_range)
>                             "%" PRId64, s->streams[0]->index_entries[i].timestamp);
>          if (ret <= 0 || (ret == 20 && i ==  s->streams[0]->nb_index_entries - 1)) {
>              av_log(s, AV_LOG_ERROR, "timestamp too long.\n");
> +                       av_free(buf);
>              return AVERROR_INVALIDDATA;
>          }
>          end += ret;

The change overall seems fine, but whats with the alignment? :)

- Hendrik
Steven Liu May 5, 2017, 12:02 p.m. UTC | #2
2017-05-05 19:59 GMT+08:00 Hendrik Leppkes <h.leppkes@gmail.com>:

> On Fri, May 5, 2017 at 9:54 PM, Steven Liu <lq@chinaffmpeg.org> wrote:
> > Fixes Coverity CID: 1405453
> >
> > Signed-off-by: Steven Liu <lq@chinaffmpeg.org>
> > ---
> >  libavformat/matroskadec.c |    1 +
> >  1 files changed, 1 insertions(+), 0 deletions(-)
> >
> > diff --git a/libavformat/matroskadec.c b/libavformat/matroskadec.c
> > index 9e2c9bd..5282ef7 100644
> > --- a/libavformat/matroskadec.c
> > +++ b/libavformat/matroskadec.c
> > @@ -3893,6 +3893,7 @@ static int webm_dash_manifest_cues(AVFormatContext
> *s, int64_t init_range)
> >                             "%" PRId64, s->streams[0]->index_entries[
> i].timestamp);
> >          if (ret <= 0 || (ret == 20 && i ==  s->streams[0]->nb_index_entries
> - 1)) {
> >              av_log(s, AV_LOG_ERROR, "timestamp too long.\n");
> > +                       av_free(buf);
> >              return AVERROR_INVALIDDATA;
> >          }
> >          end += ret;
>
> The change overall seems fine, but whats with the alignment? :)
>
oops, i will update a new one.

>
> - Hendrik
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel@ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>
wm4 May 5, 2017, 12:06 p.m. UTC | #3
On Fri, 5 May 2017 13:59:26 +0200
Hendrik Leppkes <h.leppkes@gmail.com> wrote:

> On Fri, May 5, 2017 at 9:54 PM, Steven Liu <lq@chinaffmpeg.org> wrote:
> > Fixes Coverity CID: 1405453
> >
> > Signed-off-by: Steven Liu <lq@chinaffmpeg.org>
> > ---
> >  libavformat/matroskadec.c |    1 +
> >  1 files changed, 1 insertions(+), 0 deletions(-)
> >
> > diff --git a/libavformat/matroskadec.c b/libavformat/matroskadec.c
> > index 9e2c9bd..5282ef7 100644
> > --- a/libavformat/matroskadec.c
> > +++ b/libavformat/matroskadec.c
> > @@ -3893,6 +3893,7 @@ static int webm_dash_manifest_cues(AVFormatContext *s, int64_t init_range)
> >                             "%" PRId64, s->streams[0]->index_entries[i].timestamp);
> >          if (ret <= 0 || (ret == 20 && i ==  s->streams[0]->nb_index_entries - 1)) {
> >              av_log(s, AV_LOG_ERROR, "timestamp too long.\n");
> > +                       av_free(buf);
> >              return AVERROR_INVALIDDATA;
> >          }
> >          end += ret;  
> 
> The change overall seems fine, but whats with the alignment? :)

Tabs, which I think can't be pushed anyway?
Steven Liu May 5, 2017, 12:08 p.m. UTC | #4
2017-05-05 20:06 GMT+08:00 wm4 <nfxjfg@googlemail.com>:

> On Fri, 5 May 2017 13:59:26 +0200
> Hendrik Leppkes <h.leppkes@gmail.com> wrote:
>
> > On Fri, May 5, 2017 at 9:54 PM, Steven Liu <lq@chinaffmpeg.org> wrote:
> > > Fixes Coverity CID: 1405453
> > >
> > > Signed-off-by: Steven Liu <lq@chinaffmpeg.org>
> > > ---
> > >  libavformat/matroskadec.c |    1 +
> > >  1 files changed, 1 insertions(+), 0 deletions(-)
> > >
> > > diff --git a/libavformat/matroskadec.c b/libavformat/matroskadec.c
> > > index 9e2c9bd..5282ef7 100644
> > > --- a/libavformat/matroskadec.c
> > > +++ b/libavformat/matroskadec.c
> > > @@ -3893,6 +3893,7 @@ static int webm_dash_manifest_cues(AVFormatContext
> *s, int64_t init_range)
> > >                             "%" PRId64, s->streams[0]->index_entries[
> i].timestamp);
> > >          if (ret <= 0 || (ret == 20 && i ==  s->streams[0]->nb_index_entries
> - 1)) {
> > >              av_log(s, AV_LOG_ERROR, "timestamp too long.\n");
> > > +                       av_free(buf);
> > >              return AVERROR_INVALIDDATA;
> > >          }
> > >          end += ret;
> >
> > The change overall seems fine, but whats with the alignment? :)
>
> Tabs, which I think can't be pushed anyway?
>
Yes, my mistake, i use a new computer and forgot config the vim
environment, sorry guys.

> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel@ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>
diff mbox

Patch

diff --git a/libavformat/matroskadec.c b/libavformat/matroskadec.c
index 9e2c9bd..5282ef7 100644
--- a/libavformat/matroskadec.c
+++ b/libavformat/matroskadec.c
@@ -3893,6 +3893,7 @@  static int webm_dash_manifest_cues(AVFormatContext *s, int64_t init_range)
                            "%" PRId64, s->streams[0]->index_entries[i].timestamp);
         if (ret <= 0 || (ret == 20 && i ==  s->streams[0]->nb_index_entries - 1)) {
             av_log(s, AV_LOG_ERROR, "timestamp too long.\n");
+			av_free(buf);
             return AVERROR_INVALIDDATA;
         }
         end += ret;