From 35d50643bc2516e8030f16afc44474594bbcd9fa Mon Sep 17 00:00:00 2001 From: Ivan Grokhotkov Date: Mon, 22 Aug 2016 11:50:31 +0800 Subject: [PATCH] components/nvs: fix infinite loop when loading namespaces --- components/nvs_flash/src/nvs_storage.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/components/nvs_flash/src/nvs_storage.cpp b/components/nvs_flash/src/nvs_storage.cpp index 32738fa298..5cbc52bee3 100644 --- a/components/nvs_flash/src/nvs_storage.cpp +++ b/components/nvs_flash/src/nvs_storage.cpp @@ -44,6 +44,7 @@ esp_err_t Storage::init(uint32_t baseSector, uint32_t sectorCount) return err; } + // load namespaces list clearNamespaces(); std::fill_n(mNamespaceUsage.data(), mNamespaceUsage.byteSize() / 4, 0); for (auto it = mPageManager.begin(); it != mPageManager.end(); ++it) { @@ -56,6 +57,7 @@ esp_err_t Storage::init(uint32_t baseSector, uint32_t sectorCount) item.getValue(entry->mIndex); mNamespaces.push_back(entry); mNamespaceUsage.set(entry->mIndex, true); + itemIndex += item.span; } } mNamespaceUsage.set(0, true); -- 2.40.0