mips: micronas/vct: check array bounds before access
If we check an index against array bounds, we should do so before
accessing the array and not afterwards.
Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
diff --git a/board/micronas/vct/scc.c b/board/micronas/vct/scc.c
index 0d33cc4..8dbf410 100644
--- a/board/micronas/vct/scc.c
+++ b/board/micronas/vct/scc.c
@@ -524,12 +524,14 @@
struct scc_dma_state *dma_state;
int return_value = 0;
union scc_dma_cfg dma_cfg;
- u32 *buffer_tag_list = scc_descriptor_table[id].buffer_tag_list;
+ u32 *buffer_tag_list;
u32 tag_count, t, t_valid;
if ((id >= SCC_MAX) || (id < 0))
return -EINVAL;
+ buffer_tag_list = scc_descriptor_table[id].buffer_tag_list;
+
/* if the register is only configured by hw, cannot write! */
if (1 == scc_descriptor_table[id].hw_dma_cfg)
return -EACCES;