From 49d8d9616617a180cfd44b6660ca5bf53e87e66a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?King=20K=C3=A9vin?= Date: Fri, 10 Jan 2020 12:49:45 +0100 Subject: [PATCH] dfu: fix address check --- lib/usb_dfu.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/usb_dfu.c b/lib/usb_dfu.c index f65f5d2..7ede937 100644 --- a/lib/usb_dfu.c +++ b/lib/usb_dfu.c @@ -247,7 +247,7 @@ static enum usbd_request_return_codes usb_dfu_control_request(usbd_device *usbd_ // application data is exceeding enforced flash size for application usb_dfu_status = DFU_STATUS_ERR_ADDRESS; usb_dfu_state = STATE_DFU_ERROR; - } else if ((uint32_t)&__application_end < FLASH_BASE || (uint32_t)&__application_beginning + download_offset + download_length >= (uint32_t)(FLASH_BASE + DESIG_FLASH_SIZE * 1024)) { + } else if ((uint32_t)&__application_end < FLASH_BASE && (uint32_t)&__application_beginning + download_offset + download_length >= (uint32_t)(FLASH_BASE + DESIG_FLASH_SIZE * 1024)) { // application data is exceeding advertised flash size usb_dfu_status = DFU_STATUS_ERR_ADDRESS; usb_dfu_state = STATE_DFU_ERROR;