From d057e544e01c6cc7327b1c3887e19850f90ee55b Mon Sep 17 00:00:00 2001 From: lbernstone Date: Tue, 14 Aug 2018 02:52:01 -0700 Subject: [PATCH] Added a freeEntries method to Preferences library (#1722) --- libraries/Preferences/src/Preferences.cpp | 10 ++++++++++ libraries/Preferences/src/Preferences.h | 1 + 2 files changed, 11 insertions(+) diff --git a/libraries/Preferences/src/Preferences.cpp b/libraries/Preferences/src/Preferences.cpp index b3859a0e..81b9b198 100644 --- a/libraries/Preferences/src/Preferences.cpp +++ b/libraries/Preferences/src/Preferences.cpp @@ -468,3 +468,13 @@ size_t Preferences::getBytes(const char* key, void * buf, size_t maxLen){ } return len; } + +size_t Preferences::freeEntries() { + nvs_stats_t nvs_stats; + esp_err_t err = nvs_get_stats(NULL, &nvs_stats); + if(err){ + log_e("Failed to get nvs statistics"); + return 0; + } + return nvs_stats.free_entries; +} diff --git a/libraries/Preferences/src/Preferences.h b/libraries/Preferences/src/Preferences.h index cf98e8ef..e4872693 100644 --- a/libraries/Preferences/src/Preferences.h +++ b/libraries/Preferences/src/Preferences.h @@ -64,6 +64,7 @@ class Preferences { size_t getString(const char* key, char* value, size_t maxLen); String getString(const char* key, String defaultValue = String()); size_t getBytes(const char* key, void * buf, size_t maxLen); + size_t freeEntries(); }; #endif