From 083100fca3c5fd019517e38028d26a6c8e33a364 Mon Sep 17 00:00:00 2001 From: Tomas Vanek Date: Sat, 1 Oct 2022 17:00:51 +0200 Subject: [PATCH] target/armv7m: check error in armv7m_restore_context() Return error if arm.write_core_reg() fails. Change-Id: Ide8f5aa5958532b202dc9f5e13d3250a706d832d Signed-off-by: Tomas Vanek Reviewed-on: https://review.openocd.org/c/openocd/+/7238 Tested-by: jenkins Reviewed-by: Antonio Borneo --- src/target/armv7m.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/target/armv7m.c b/src/target/armv7m.c index 93df5877eb..1b85315ded 100644 --- a/src/target/armv7m.c +++ b/src/target/armv7m.c @@ -182,8 +182,11 @@ int armv7m_restore_context(struct target *target) for (i = cache->num_regs - 1; i >= 0; i--) { struct reg *r = &cache->reg_list[i]; - if (r->exist && r->dirty) - armv7m->arm.write_core_reg(target, r, i, ARM_MODE_ANY, r->value); + if (r->exist && r->dirty) { + int retval = armv7m->arm.write_core_reg(target, r, i, ARM_MODE_ANY, r->value); + if (retval != ERROR_OK) + return retval; + } } return ERROR_OK; -- 2.30.2