diff --git a/BL808Image.bt b/BL808Image.bt index f82e45e9f7635f67bbb836b0e7451152044f5c53..780c2cbed6b65aadefa10ee63de443f5e368facb 100644 --- a/BL808Image.bt +++ b/BL808Image.bt @@ -231,7 +231,13 @@ if (BootHeader.magic != 0x504e4642) return 1; } -if(BootHeader.flashCfgTableAddr < FileSize() && +if(BootHeader.flashCfgTableLen == 0) +{ + Warning("Configuration table length is 0.\n"); + return 1; +} + +if (BootHeader.flashCfgTableAddr < FileSize() && BootHeader.flashCfgTableAddr + BootHeader.flashCfgTableLen <= FileSize()) { FSeek(BootHeader.flashCfgTableAddr); local quad num_configs = (BootHeader.flashCfgTableLen - 8) / 8;