Skip to content
This repository was archived by the owner on Oct 28, 2023. It is now read-only.

Commit 2184f01

Browse files
authored
Merge pull request SHA2017-badge#103 from SHA2017-badge/basvs-nvs-erase
expose badge.nvs_erase_key()
2 parents e302b6c + 3abd660 commit 2184f01

File tree

1 file changed

+15
-2
lines changed

1 file changed

+15
-2
lines changed

esp32/modbadge.c

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -45,8 +45,6 @@ STATIC mp_obj_t badge_init_() {
4545
STATIC MP_DEFINE_CONST_FUN_OBJ_0(badge_init_obj, badge_init_);
4646

4747
/*** nvs access ***/
48-
49-
/* nvs: strings */
5048
static void _nvs_check_namespace_key(const char *namespace, const char *key) {
5149
if (strlen(namespace) == 0 || strlen(namespace) > 15) {
5250
mp_raise_msg(&mp_type_AttributeError, "Invalid namespace");
@@ -56,6 +54,20 @@ static void _nvs_check_namespace_key(const char *namespace, const char *key) {
5654
}
5755
}
5856

57+
STATIC mp_obj_t badge_nvs_erase_key_(mp_obj_t _namespace, mp_obj_t _key) {
58+
const char *namespace = mp_obj_str_get_str(_namespace);
59+
const char *key = mp_obj_str_get_str(_key);
60+
_nvs_check_namespace_key(namespace, key);
61+
62+
esp_err_t err = badge_nvs_erase_key(namespace, key);
63+
if (err != ESP_OK) {
64+
mp_raise_msg(&mp_type_ValueError, "Failed to store data in nvs");
65+
}
66+
67+
return mp_const_none;
68+
}
69+
STATIC MP_DEFINE_CONST_FUN_OBJ_2(badge_nvs_erase_key_obj, badge_nvs_erase_key_);
70+
/* nvs: strings */
5971
STATIC mp_obj_t badge_nvs_get_str_(mp_uint_t n_args, const mp_obj_t *args) {
6072
const char *namespace = mp_obj_str_get_str(args[0]);
6173
const char *key = mp_obj_str_get_str(args[1]);
@@ -339,6 +351,7 @@ STATIC const mp_rom_map_elem_t badge_module_globals_table[] = {
339351
{MP_ROM_QSTR(MP_QSTR_eink_init), MP_ROM_PTR(&badge_eink_init_obj)},
340352
{MP_OBJ_NEW_QSTR(MP_QSTR_power_init), (mp_obj_t)&badge_power_init_obj},
341353

354+
{MP_ROM_QSTR(MP_QSTR_nvs_erase_key), MP_ROM_PTR(&badge_nvs_erase_key_obj)},
342355
{MP_ROM_QSTR(MP_QSTR_nvs_get_str), MP_ROM_PTR(&badge_nvs_get_str_obj)},
343356
{MP_ROM_QSTR(MP_QSTR_nvs_set_str), MP_ROM_PTR(&badge_nvs_set_str_obj)},
344357
{MP_ROM_QSTR(MP_QSTR_nvs_get_u8), MP_ROM_PTR(&badge_nvs_get_u8_obj)},

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy