From a59e8058e77038f9212dcea61ca8572f1adf390b Mon Sep 17 00:00:00 2001 From: Jim Paris Date: Wed, 29 Oct 2014 19:09:49 -0400 Subject: [PATCH] nrf51: fix checks for is_erased is_erased can take the value 0 (no), 1 (yes), or -1 (unknown). Checks like (!is_erased) don't do the right thing if it's -1. Change-Id: I10ba32c99494ca803e0a7a1ba56fdd78184b96bb Signed-off-by: Jim Paris Reviewed-on: http://openocd.zylin.com/2366 Tested-by: jenkins Reviewed-by: Spencer Oliver --- src/flash/nor/nrf51.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/flash/nor/nrf51.c b/src/flash/nor/nrf51.c index bfa199a2..c5ffa832 100644 --- a/src/flash/nor/nrf51.c +++ b/src/flash/nor/nrf51.c @@ -642,7 +642,7 @@ static int nrf51_write_page(struct flash_bank *bank, uint32_t offset, const uint if (sector->is_protected) goto error; - if (!sector->is_erased) { + if (sector->is_erased != 1) { res = nrf51_erase_page(bank, chip, sector); if (res != ERROR_OK) { LOG_ERROR("Failed to erase sector @ 0x%08"PRIx32, sector->offset); @@ -784,7 +784,7 @@ static int nrf51_uicr_flash_write(struct flash_bank *bank, if (res != ERROR_OK) return res; - if (!sector->is_erased) { + if (sector->is_erased != 1) { res = nrf51_erase_page(bank, chip, sector); if (res != ERROR_OK) return res; -- 2.39.5