diff --git a/main/io/nvs_handler.cpp b/main/io/nvs_handler.cpp index 187b6cf..cc83d66 100644 --- a/main/io/nvs_handler.cpp +++ b/main/io/nvs_handler.cpp @@ -47,7 +47,7 @@ void NVSStorageHandler::put(const std::string& key, const std::string& value) { ESP_LOGE(TAG, "Error (%s) setting key-value pair in NVS!", esp_err_to_name(err)); } else { nvs_commit(this->nvsHandle); - ESP_LOGI(TAG, "Key-value pair (%s, %s) stored in NVS.", key.c_str(), value.c_str()); + // ESP_LOGI(TAG, "Key-value pair (%s, %s) stored in NVS.", key.c_str(), value.c_str()); } } @@ -67,8 +67,9 @@ std::string NVSStorageHandler::get(const std::string& key) const { return ""; } - std::string value; - err = nvs_get_str(this->nvsHandle, key.c_str(), value.data(), &required_size); + // Allocate string buffer with correct size (includes null terminator) + std::string value(required_size - 1, '\0'); + err = nvs_get_str(this->nvsHandle, key.c_str(), &value[0], &required_size); if (err != ESP_OK) { ESP_LOGE(TAG, "Error (%s) getting value for key %s from NVS!", esp_err_to_name(err), key.c_str()); return "";