From 0eddee63e8251d44c82ff943fd8593d3ebbea00c Mon Sep 17 00:00:00 2001 From: Jakob Hasse Date: Thu, 15 Dec 2022 15:35:00 +0800 Subject: [PATCH] bugfix(nvs_flash): fixed potential memory leak in nvs::Storage::init() --- components/nvs_flash/src/nvs_storage.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/components/nvs_flash/src/nvs_storage.cpp b/components/nvs_flash/src/nvs_storage.cpp index 1cf3b94859..e076998136 100644 --- a/components/nvs_flash/src/nvs_storage.cpp +++ b/components/nvs_flash/src/nvs_storage.cpp @@ -112,12 +112,14 @@ esp_err_t Storage::init(uint32_t baseSector, uint32_t sectorCount) item.getKey(entry->mName, sizeof(entry->mName)); err = item.getValue(entry->mIndex); if (err != ESP_OK) { + delete entry; return err; } - mNamespaces.push_back(entry); if (mNamespaceUsage.set(entry->mIndex, true) != ESP_OK) { + delete entry; return ESP_FAIL; } + mNamespaces.push_back(entry); itemIndex += item.span; } }