avfilter/vf_colormap: Avoid allocation of small array

The number of elements is always two or three.

Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
release/5.1
Andreas Rheinhardt 3 years ago
parent 9d2f427958
commit 8449fbdf8e
  1. 12
      libavfilter/vf_colormap.c

@ -24,6 +24,7 @@
*/ */
#include "libavutil/attributes.h" #include "libavutil/attributes.h"
#include "libavutil/avassert.h"
#include "libavutil/common.h" #include "libavutil/common.h"
#include "libavutil/opt.h" #include "libavutil/opt.h"
#include "avfilter.h" #include "avfilter.h"
@ -134,20 +135,15 @@ static void gauss_solve_triangular(const double *A, const int *p, double *b, int
static int gauss_solve(double *A, double *b, int n) static int gauss_solve(double *A, double *b, int n)
{ {
int *p = av_calloc(n, sizeof(*p)); int p[3] = { 0 };
if (!p) av_assert2(n <= FF_ARRAY_ELEMS(p));
return 1;
if (!gauss_make_triangular(A, p, n)) { if (!gauss_make_triangular(A, p, n))
av_freep(&p);
return 1; return 1;
}
gauss_solve_triangular(A, p, b, n); gauss_solve_triangular(A, p, b, n);
av_freep(&p);
return 0; return 0;
} }

Loading…
Cancel
Save