ref: e8d610dda06a972236dbf6ddeda5f4d16dbddb3b
parent: 1306ba765913c90609e8a41ee0890352f62ddb05
author: Yunqing Wang <yunqingwang@google.com>
date: Tue Dec 18 07:09:46 EST 2012
Fix a warning Fixed the warning: the size of array ‘intermediate_buffer’ can’t be evaluated [-Wvla]. Change-Id: Ibcffd6969bd71cee0c10f7cf18960e58cd0bd915
--- a/vp9/common/vp9_filter.c
+++ b/vp9/common/vp9_filter.c
@@ -470,9 +470,6 @@
{16,16},
};
-static const unsigned int filter_max_height = 16;
-static const unsigned int filter_max_width = 16;
-
static void filter_block2d_8_c(const unsigned char *src_ptr,
const unsigned int src_stride,
const short *HFilter,
@@ -490,14 +487,15 @@
const int kInterp_Extend = 4;
const unsigned int intermediate_height =
(kInterp_Extend - 1) + output_height + kInterp_Extend;
- const unsigned int max_intermediate_height =
- (kInterp_Extend - 1) + filter_max_height + kInterp_Extend;
-#ifdef _MSC_VER
- // MSVC does not support C99 style declaration
+
+ /* Size of intermediate_buffer is max_intermediate_height * filter_max_width,
+ * where max_intermediate_height = (kInterp_Extend - 1) + filter_max_height
+ * + kInterp_Extend
+ * = 3 + 16 + 4
+ * = 23
+ * and filter_max_width = 16
+ */
unsigned char intermediate_buffer[23 * 16];
-#else
- unsigned char intermediate_buffer[max_intermediate_height * filter_max_width];
-#endif
const int intermediate_next_stride = 1 - intermediate_height * output_width;
// Horizontal pass (src -> transposed intermediate).
--
⑨