Skip to content

Commit 559a9de

Browse files
committed
Merge branch 'fix/update_curr_page_state_3.1' into 'release/v3.1'
nvs_util: Set previous page state to FULL before creating new page (v3.1) See merge request idf/esp-idf!5329
2 parents d9b5d77 + 6a29794 commit 559a9de

File tree

1 file changed

+6
-3
lines changed

1 file changed

+6
-3
lines changed

components/nvs_flash/nvs_partition_generator/nvs_partition_gen.py

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -282,9 +282,6 @@ def write_varlen_binary_data(self, entry_struct, ns_index, key, data, data_size,
282282
chunk_count = chunk_count + 1
283283

284284
if remaining_size or (tailroom - chunk_size) < Page.SINGLE_ENTRY_SIZE:
285-
if page_header[0:4] != Page.FULL:
286-
page_state_full_seq = Page.FULL
287-
struct.pack_into('<I', page_header, 0, page_state_full_seq)
288285
nvs_obj.create_new_page()
289286
self = nvs_obj.cur_page
290287

@@ -463,6 +460,12 @@ def __exit__(self, exc_type, exc_value, traceback):
463460
self.fout.write(result)
464461

465462
def create_new_page(self):
463+
# Set previous page state to FULL before creating new page
464+
if self.pages:
465+
curr_page_state = struct.unpack('<I', self.cur_page.page_buf[0:4])[0]
466+
if curr_page_state == Page.ACTIVE:
467+
page_state_full_seq = Page.FULL
468+
struct.pack_into('<I', self.cur_page.page_buf, 0, page_state_full_seq)
466469
self.page_num += 1
467470
new_page = Page(self.page_num)
468471
new_page.version = version

0 commit comments

Comments
 (0)