From 2b4c3c4fb82f7add472ba7d9fbfe5bdce7c4a35a Mon Sep 17 00:00:00 2001 From: "Earle F. Philhower, III" Date: Tue, 22 Jan 2019 12:19:49 -0800 Subject: [PATCH 1/2] Release buffer/cache on SPIFFS.end() Releases the buffers allocated by the SPIFFS object when/if SPIFFS::end() is called. Fixes #4585 --- cores/esp8266/spiffs_api.h | 3 +++ 1 file changed, 3 insertions(+) diff --git a/cores/esp8266/spiffs_api.h b/cores/esp8266/spiffs_api.h index 08f9eb8791..2d76e36f05 100644 --- a/cores/esp8266/spiffs_api.h +++ b/cores/esp8266/spiffs_api.h @@ -154,6 +154,9 @@ class SPIFFSImpl : public FSImpl return; } SPIFFS_unmount(&_fs); + delete[] _workBuf.release(); + delete[] _fdsBuf.release(); + delete[] _cacheBuf.release(); } bool format() override From 304a46ce3797dd2c7b8b3f1990cdddb28426ca4b Mon Sep 17 00:00:00 2001 From: "Earle F. Philhower, III" Date: Thu, 24 Jan 2019 14:24:07 -0800 Subject: [PATCH 2/2] Use standard deallocation method. --- cores/esp8266/spiffs_api.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/cores/esp8266/spiffs_api.h b/cores/esp8266/spiffs_api.h index 2d76e36f05..4a32b8ec09 100644 --- a/cores/esp8266/spiffs_api.h +++ b/cores/esp8266/spiffs_api.h @@ -154,9 +154,9 @@ class SPIFFSImpl : public FSImpl return; } SPIFFS_unmount(&_fs); - delete[] _workBuf.release(); - delete[] _fdsBuf.release(); - delete[] _cacheBuf.release(); + _workBuf.reset(nullptr); + _fdsBuf.reset(nullptr); + _cacheBuf.reset(nullptr); } bool format() override