From b5e63d886d9d2e64ec247eaf8c4880f492d646ef Mon Sep 17 00:00:00 2001 From: noshbar Date: Wed, 2 Oct 2019 15:41:29 +0200 Subject: [PATCH] This fixes uninitialised loop variables in atcmd-board, and asserts that happen too late in gpio-board. --- .../Src/atcmd-board.c | 4 +-- .../RHF76_STM32L072CBxx_Lora/Src/gpio-board.c | 28 ++++++++++--------- 2 files changed, 17 insertions(+), 15 deletions(-) diff --git a/board/RHF76_STM32L072CBxx_Lora/Src/atcmd-board.c b/board/RHF76_STM32L072CBxx_Lora/Src/atcmd-board.c index 7abe3a62..a9fb08a7 100644 --- a/board/RHF76_STM32L072CBxx_Lora/Src/atcmd-board.c +++ b/board/RHF76_STM32L072CBxx_Lora/Src/atcmd-board.c @@ -31,7 +31,7 @@ uint8_t isspace(char x) /*ASCÂëתÕûÐÎ*/ int asc2int(const uint8_t * asc, uint8_t len) { - uint8_t i; + uint8_t i = 0; char c; char sign; int total = 0; @@ -234,7 +234,7 @@ uint8_t at_key_handle(uint8_t *param, uint16_t size) * AT+KEY=APPKEY, "2B7E151628AED2A6ABF7158809CF4F3C" */ uint8_t key[16]; - uint8_t i; + uint8_t i = 0; MibRequestConfirm_t mibReq; while(param[i++] != '\"'); diff --git a/board/RHF76_STM32L072CBxx_Lora/Src/gpio-board.c b/board/RHF76_STM32L072CBxx_Lora/Src/gpio-board.c index 7af1112a..042b0b8a 100644 --- a/board/RHF76_STM32L072CBxx_Lora/Src/gpio-board.c +++ b/board/RHF76_STM32L072CBxx_Lora/Src/gpio-board.c @@ -249,12 +249,13 @@ void GpioMcuRemoveInterrupt( Gpio_t *obj ) void GpioMcuWrite( Gpio_t *obj, uint32_t value ) { + if( obj == NULL ) + { + assert_param( LORA_FAIL ); + } + if( obj->pin < IOE_0 ) { - if( obj == NULL ) - { - assert_param( LORA_FAIL ); - } // Check if pin is not connected if( obj->pin == NC ) { @@ -273,13 +274,13 @@ void GpioMcuWrite( Gpio_t *obj, uint32_t value ) void GpioMcuToggle( Gpio_t *obj ) { + if( obj == NULL ) + { + assert_param( LORA_FAIL ); + } + if( obj->pin < IOE_0 ) { - if( obj == NULL ) - { - assert_param( LORA_FAIL ); - } - // Check if pin is not connected if( obj->pin == NC ) { @@ -298,12 +299,13 @@ void GpioMcuToggle( Gpio_t *obj ) uint32_t GpioMcuRead( Gpio_t *obj ) { + if( obj == NULL ) + { + assert_param( LORA_FAIL ); + } + if( obj->pin < IOE_0 ) { - if( obj == NULL ) - { - assert_param( LORA_FAIL ); - } // Check if pin is not connected if( obj->pin == NC ) {