From d935042b58713859383b2f19be9400f3e34aff3e Mon Sep 17 00:00:00 2001 From: Mike Date: Wed, 30 Oct 2019 17:13:25 +0000 Subject: [PATCH] Bugfix: `flashmem_get_info()` only works if running from slot #0. (#1923) --- Sming/Arch/Esp8266/Components/spi_flash/flashmem.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/Sming/Arch/Esp8266/Components/spi_flash/flashmem.c b/Sming/Arch/Esp8266/Components/spi_flash/flashmem.c index 5d47a6c8b6..a764b8bd54 100644 --- a/Sming/Arch/Esp8266/Components/spi_flash/flashmem.c +++ b/Sming/Arch/Esp8266/Components/spi_flash/flashmem.c @@ -180,8 +180,10 @@ bool flashmem_erase_sector(uint32_t sector_id) SPIFlashInfo flashmem_get_info() { - volatile SPIFlashInfo spi_flash_info STORE_ATTR; - spi_flash_info = *((SPIFlashInfo *)(INTERNAL_FLASH_START_ADDRESS)); + SPIFlashInfo spi_flash_info STORE_ATTR; + if(flashmem_read_internal(&spi_flash_info, 0x00000000, sizeof(spi_flash_info)) == 0) { + memset(&spi_flash_info, 0, sizeof(spi_flash_info)); + } return spi_flash_info; }