[FFmpeg-devel] [PATCH] avcodec/ass: Fix a memory leak defect.

Gang Fan(范刚) fan.gang.cn at gmail.com
Tue Feb 13 09:30:46 EET 2018


Thanks for the advice, let me have another try.

On Tue, Feb 13, 2018 at 4:59 AM, wm4 <nfxjfg at googlemail.com> wrote:

> On Mon, 12 Feb 2018 20:56:25 +0800
> Gang Fan(范刚) <fan.gang.cn at gmail.com> wrote:
>
> > Thanks to Hendrik
> > Here is the new patch:
> >
> > From 642a413080f20f9515321e42056248e86e003997 Mon Sep 17 00:00:00 2001
> > From: Fan Gang <fangang at sbrella.com>
> > Date: Mon, 12 Feb 2018 20:55:06 +0800
> > Subject: [PATCH] avcodec/ass: Fix a memory leak defect when realloc
> fails.
> >
> > ---
> >  libavcodec/ass_split.c | 6 ++----
> >  1 file changed, 2 insertions(+), 4 deletions(-)
> >
> > diff --git a/libavcodec/ass_split.c b/libavcodec/ass_split.c
> > index 872528b..eebe239 100644
> > --- a/libavcodec/ass_split.c
> > +++ b/libavcodec/ass_split.c
> > @@ -249,7 +249,7 @@ static const char *ass_split_section(ASSSplitContext
> > *ctx, const char *buf)
> >      const ASSSection *section = &ass_sections[ctx->current_section];
> >      int *number = &ctx->field_number[ctx->current_section];
> >      int *order = ctx->field_order[ctx->current_section];
> > -    int *tmp, i, len;
> > +    int i, len;
> >
> >      while (buf && *buf) {
> >          if (buf[0] == '[') {
> > @@ -280,9 +280,7 @@ static const char *ass_split_section(ASSSplitContext
> > *ctx, const char *buf)
> >                  while (!is_eol(*buf)) {
> >                      buf = skip_space(buf);
> >                      len = strcspn(buf, ", \r\n");
> > -                    if (!(tmp = av_realloc_array(order, (*number + 1),
> > sizeof(*order))))
> > -                        return NULL;
> > -                    order = tmp;
> > +                    av_reallocp_array(&order, (*number + 1),
> > sizeof(*order));
> >                      order[*number] = -1;
> >                      for (i=0; section->fields[i].name; i++)
> >                          if (!strncmp(buf, section->fields[i].name,
> len)) {
>
> The patch formatting is broken (line breaks). It will be cumbersome to
> apply it, which most likely will mean nobody is going to try.
>
> Never copy&paste a patch into the text field of your email client.
> Instead you should do one of these things:
>
> - just attach the patch as text attachment
> - use git send-email
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel at ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>



-- 


*With kind regards*


More information about the ffmpeg-devel mailing list