From bcb6b0fbeebaaa01ad13aaabc472aac9cf49b32e Mon Sep 17 00:00:00 2001 From: me-no-dev Date: Wed, 17 Aug 2016 22:16:58 +0300 Subject: [PATCH] make updater fail if there is not enough space to fit the new firmware --- cores/esp8266/Updater.cpp | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/cores/esp8266/Updater.cpp b/cores/esp8266/Updater.cpp index 4764742463..258d899c3a 100644 --- a/cores/esp8266/Updater.cpp +++ b/cores/esp8266/Updater.cpp @@ -226,12 +226,17 @@ bool UpdaterClass::_writeBuffer(){ } size_t UpdaterClass::write(uint8_t *data, size_t len) { - size_t left = len; if(hasError() || !isRunning()) return 0; - if(len > remaining()) - len = remaining(); + if(len > remaining()){ + //len = remaining(); + //fail instead + _error = UPDATE_ERROR_SPACE; + return 0; + } + + size_t left = len; while((_bufferLen + left) > FLASH_SECTOR_SIZE) { size_t toBuff = FLASH_SECTOR_SIZE - _bufferLen;