26
26
27
27
#include "common-hal/nvm/ByteArray.h"
28
28
29
- #include <string.h>
30
-
31
29
#include "py/runtime.h"
32
30
#include "nvs_flash.h"
33
31
@@ -56,17 +54,14 @@ bool common_hal_nvm_bytearray_set_bytes(nvm_bytearray_obj_t *self,
56
54
uint32_t start_index , uint8_t * values , uint32_t len ) {
57
55
char index [9 ];
58
56
59
- uint8_t buffer [len ];
60
- memcpy (buffer , values , len );
61
-
62
57
// start nvs
63
58
nvs_handle_t handle ;
64
59
get_nvs_handle (& handle );
65
60
66
61
// stage flash changes
67
62
for (uint32_t i = 0 ; i < len ; i ++ ) {
68
63
sprintf (index , "%i" , start_index + i );
69
- if (nvs_set_u8 (handle , (const char * )index , buffer [i ]) != ESP_OK ) {
64
+ if (nvs_set_u8 (handle , (const char * )index , values [i ]) != ESP_OK ) {
70
65
return false;
71
66
}
72
67
}
@@ -84,7 +79,6 @@ bool common_hal_nvm_bytearray_set_bytes(nvm_bytearray_obj_t *self,
84
79
void common_hal_nvm_bytearray_get_bytes (nvm_bytearray_obj_t * self ,
85
80
uint32_t start_index , uint32_t len , uint8_t * values ) {
86
81
char index [9 ];
87
- uint8_t buffer [len ];
88
82
89
83
// start nvs
90
84
nvs_handle_t handle ;
@@ -93,14 +87,11 @@ void common_hal_nvm_bytearray_get_bytes(nvm_bytearray_obj_t *self,
93
87
// get from flash
94
88
for (uint32_t i = 0 ; i < len ; i ++ ) {
95
89
sprintf (index , "%i" , start_index + i );
96
- if (nvs_get_u8 (handle , (const char * )index , & buffer [i ]) != ESP_OK ) {
90
+ if (nvs_get_u8 (handle , (const char * )index , & values [i ]) != ESP_OK ) {
97
91
mp_raise_RuntimeError (translate ("NVS Error" ));
98
92
}
99
93
}
100
94
101
- // set into values
102
- memcpy (values , buffer , len );
103
-
104
95
// close nvs
105
96
nvs_close (handle );
106
97
}
0 commit comments