From b183ef25862d16571c39a2dd2aadcdf36a95073e Mon Sep 17 00:00:00 2001 From: "Michael (XIAO Xufeng)" Date: Wed, 5 Aug 2020 13:37:42 +0800 Subject: [PATCH] esp_flash: fix write issue using buffer on stack out of lifetime --- components/spi_flash/esp_flash_api.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/components/spi_flash/esp_flash_api.c b/components/spi_flash/esp_flash_api.c index a6e7111000..e5d922e585 100644 --- a/components/spi_flash/esp_flash_api.c +++ b/components/spi_flash/esp_flash_api.c @@ -599,14 +599,14 @@ esp_err_t IRAM_ATTR esp_flash_write(esp_flash_t *chip, const void *buffer, uint3 do { uint32_t write_len; const void *write_buf; + uint32_t temp_buf[8]; if (direct_write) { write_len = MIN(length, MAX_WRITE_CHUNK); write_buf = buffer; } else { - uint32_t buf[8]; - write_len = MIN(length, sizeof(buf)); - memcpy(buf, buffer, write_len); - write_buf = buf; + write_len = MIN(length, sizeof(temp_buf)); + memcpy(temp_buf, buffer, write_len); + write_buf = temp_buf; } err = spiflash_start(chip);