summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Rheinhardt <andreas.rheinhardt@outlook.com>2024-02-14 00:40:47 +0100
committerAndreas Rheinhardt <andreas.rheinhardt@outlook.com>2024-02-18 16:38:09 +0100
commitc149d86760aca52c9d289ff1aa835689875e842e (patch)
treed1c43175abfd9e65570b9d724dbb99935b935719
parentc7ceff690f16f04f3fc2e48ac73f48cebc445587 (diff)
avfilter/vf_signature: Allocate arrays together
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
-rw-r--r--libavfilter/vf_signature.c9
1 files changed, 2 insertions, 7 deletions
diff --git a/libavfilter/vf_signature.c b/libavfilter/vf_signature.c
index 7db8bef42a..758b6e5101 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 */