From b99e597a739054f3814a4d8d26107b277ee8ac58 Mon Sep 17 00:00:00 2001 From: Jukka Laitinen Date: Tue, 13 Apr 2021 09:00:18 +0300 Subject: [PATCH] flashparams: Fix a null-pointer dereference crash Fix a potential crash caused by calling erase_sector with a null sector_descriptor (current_sector == 0). Signed-off-by: Jukka Laitinen --- src/lib/parameters/flashparams/flashfs.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/lib/parameters/flashparams/flashfs.c b/src/lib/parameters/flashparams/flashfs.c index 1da457e5f3..da11614a9e 100644 --- a/src/lib/parameters/flashparams/flashfs.c +++ b/src/lib/parameters/flashparams/flashfs.c @@ -875,11 +875,13 @@ parameter_flashfs_write(flash_file_token_t token, uint8_t *buffer, size_t buf_si } pf = (flash_entry_header_t *) current_sector->address; + + if (!blank_check(pf, total_size)) { + rv = erase_sector(current_sector, pf); + } + } - if (!blank_check(pf, total_size)) { - rv = erase_sector(current_sector, pf); - } } flash_entry_header_t *pn = (flash_entry_header_t *)(buffer - sizeof(flash_entry_header_t));