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

epirat07 at gmail.com epirat07 at gmail.com
Wed Feb 14 14:17:29 EET 2024


On 14 Feb 2024, at 13:03, Andreas Rheinhardt wrote:

> 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;

Just my 2cents as someone not maintaining this code, so feel free to ignore completely:

IMHO this makes it harder to understand what is going on, does it provide any meaningful
benefit?

At the very least I would suggest to add a comment for the sake of whoever looks a this
code next and tries to grasp what is happening there.

>
>          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 */
> -- 
> 2.34.1
>
> _______________________________________________
> 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