History

avfilter/vf_fftfilt: Check return value of av_tx_init()

Should fix Coverity issue #1516765.

Andreas Rheinhardt committed 4 years ago

Commit 36d05501 parent b6fcf3a1 file · +17 −13Browse files

Showing the changes to libavfilter (1 of 1 file). Show all

Unified · Split

libavfilter/vf_fftfilt.c+17−13
@@ -306,7 +306,7 @@ static int config_props(AVFilterLink *inlink) · 305 unmodified lines
306{306{
307 FFTFILTContext *s = inlink->dst->priv;307 FFTFILTContext *s = inlink->dst->priv;
308 const AVPixFmtDescriptor *desc;308 const AVPixFmtDescriptor *desc;
309 int i, plane;309 int ret, i, plane;
310 310
311 desc = av_pix_fmt_desc_get(inlink->format);311 desc = av_pix_fmt_desc_get(inlink->format);
312 s->depth = desc->comp[0].depth;312 s->depth = desc->comp[0].depth;
@@ -335,12 +335,14 @@ static int config_props(AVFilterLink *inlink) · 22 unmodified lines
335 for (int j = 0; j < s->nb_threads; j++) {335 for (int j = 0; j < s->nb_threads; j++) {
336 float scale = 1.f, iscale = 1.f;336 float scale = 1.f, iscale = 1.f;
337 337
338 av_tx_init(&s->hrdft[j][i], &s->htx_fn, AV_TX_FLOAT_RDFT, 0, 1 << s->rdft_hbits[i], &scale, 0);338 ret = av_tx_init(&s->hrdft[j][i], &s->htx_fn, AV_TX_FLOAT_RDFT,
339 if (!s->hrdft[j][i])339 0, 1 << s->rdft_hbits[i], &scale, 0);
340 return AVERROR(ENOMEM);340 if (ret < 0)
341 av_tx_init(&s->ihrdft[j][i], &s->ihtx_fn, AV_TX_FLOAT_RDFT, 1, 1 << s->rdft_hbits[i], &iscale, 0);341 return ret;
342 if (!s->ihrdft[j][i])342 ret = av_tx_init(&s->ihrdft[j][i], &s->ihtx_fn, AV_TX_FLOAT_RDFT,
343 return AVERROR(ENOMEM);343 1, 1 << s->rdft_hbits[i], &iscale, 0);
344 if (ret < 0)
345 return ret;
344 }346 }
345 347
346 /* RDFT - Array initialization for Vertical pass*/348 /* RDFT - Array initialization for Vertical pass*/
@@ -356,12 +358,14 @@ static int config_props(AVFilterLink *inlink) · 9 unmodified lines
356 for (int j = 0; j < s->nb_threads; j++) {358 for (int j = 0; j < s->nb_threads; j++) {
357 float scale = 1.f, iscale = 1.f;359 float scale = 1.f, iscale = 1.f;
358 360
359 av_tx_init(&s->vrdft[j][i], &s->vtx_fn, AV_TX_FLOAT_RDFT, 0, 1 << s->rdft_vbits[i], &scale, 0);361 ret = av_tx_init(&s->vrdft[j][i], &s->vtx_fn, AV_TX_FLOAT_RDFT,
360 if (!s->vrdft[j][i])362 0, 1 << s->rdft_vbits[i], &scale, 0);
361 return AVERROR(ENOMEM);363 if (ret < 0)
362 av_tx_init(&s->ivrdft[j][i], &s->ivtx_fn, AV_TX_FLOAT_RDFT, 1, 1 << s->rdft_vbits[i], &iscale, 0);364 return ret;
363 if (!s->ivrdft[j][i])365 ret = av_tx_init(&s->ivrdft[j][i], &s->ivtx_fn, AV_TX_FLOAT_RDFT,
364 return AVERROR(ENOMEM);366 1, 1 << s->rdft_vbits[i], &iscale, 0);
367 if (ret < 0)
368 return ret;
365 }369 }
366 }370 }
367 371

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t