[FFmpeg-devel] [PATCH 1/5] avfilter/vf_signature: Allocate arrays together

Andreas Rheinhardt andreas.rheinhardt at outlook.com
Sun Feb 18 04:48:27 EET 2024


Andreas Rheinhardt:
> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt at outlook.com>
> ---
>  libavfilter/vf_signature.c | 9 ++-------
>  1 file changed, 2 insertions(+), 7 deletions(-)
> 
> diff --git a/libavfilter/vf_signature.c b/libavfilter/vf_signature.c
> index 4896e8f2c1..eb48bf773d 100644
> --- a/libavfilter/vf_signature.c
> +++ b/libavfilter/vf_signature.c
> @@ -250,14 +250,10 @@ static int filter_frame(AVFilterLink *inlink, AVFrame *picref)
>          int64_t* elemsignature;
>          uint64_t* sortsignature;
>  
> -        elemsignature = av_malloc_array(elemcat->elem_count, sizeof(int64_t));
> +        elemsignature = av_malloc_array(elemcat->elem_count, 2 * sizeof(int64_t));
>          if (!elemsignature)
>              return AVERROR(ENOMEM);
> -        sortsignature = av_malloc_array(elemcat->elem_count, sizeof(int64_t));
> -        if (!sortsignature) {
> -            av_freep(&elemsignature);
> -            return AVERROR(ENOMEM);
> -        }
> +        sortsignature = elemsignature + elemcat->elem_count;
>  
>          for (j = 0; j < elemcat->elem_count; j++) {
>              blocksum = 0;
> @@ -307,7 +303,6 @@ static int filter_frame(AVFilterLink *inlink, AVFrame *picref)
>              f++;
>          }
>          av_freep(&elemsignature);
> -        av_freep(&sortsignature);
>      }
>  
>      /* confidence */

Will apply this patchset tomorrow unless there are objections.

- Andreas



More information about the ffmpeg-devel mailing list