History

avfilter/afir_template: avoid indirect accessing nb_partitions value

Paul B Mahol committed 3 years ago

Commit 69ac78d1 parent a73f4ca1 file · +4 −3Browse files

Unified · Split

libavfilter/afir_template.c+4−3
@@ -267,6 +267,7 @@ static int fn(fir_quantum)(AVFilterContext *ctx, AVFrame *out, int ch, int offse · 266 unmodified lines
267267 ftype *sumin = (ftype *)seg->sumin->extended_data[ch];
268268 ftype *sumout = (ftype *)seg->sumout->extended_data[ch];
269269 int *output_offset = &seg->output_offset[ch];
270+ const int nb_partitions = seg->nb_partitions;
270271 const int input_offset = seg->input_offset;
271272 const int part_size = seg->part_size;
272273 int j;
@@ -306,7 +307,7 @@ static int fn(fir_quantum)(AVFilterContext *ctx, AVFrame *out, int ch, int offse · 33 unmodified lines
306307
307308 j = seg->part_index[ch];
308309
309− for (int i = 0; i < seg->nb_partitions; i++) {
310+ for (int i = 0; i < nb_partitions; i++) {
310311 const int coffset = j * seg->coeff_size;
311312 const ftype *blockout = (const ftype *)seg->blockout->extended_data[ch] + i * seg->block_size;
312313 const ctype *coeff = (const ctype *)seg->coeff->extended_data[ch * !s->one2many] + coffset;
@@ -317,7 +318,7 @@ static int fn(fir_quantum)(AVFilterContext *ctx, AVFrame *out, int ch, int offse · 4 unmodified lines
317318 s->afirdsp.dcmul_add(sumin, blockout, (const ftype *)coeff, part_size);
318319 #endif
319320 if (j == 0)
320− j = seg->nb_partitions;
321+ j = nb_partitions;
321322 j--;
322323 }
323324
@@ -331,7 +332,7 @@ static int fn(fir_quantum)(AVFilterContext *ctx, AVFrame *out, int ch, int offse · 7 unmodified lines
331332 buf = (ftype *)seg->buffer->extended_data[ch];
332333 memcpy(buf, sumout + part_size, part_size * sizeof(*buf));
333334
334− seg->part_index[ch] = (seg->part_index[ch] + 1) % seg->nb_partitions;
335+ seg->part_index[ch] = (seg->part_index[ch] + 1) % nb_partitions;;
335336
336337 memmove(src, src + min_part_size, (seg->input_size - min_part_size) * sizeof(*src));
337338

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