]> git.sur5r.net Git - openocd/commitdiff
cortex_a: add missing error propagation
authorØyvind Harboe <oyvind.harboe@zylin.com>
Tue, 1 Nov 2011 21:56:28 +0000 (22:56 +0100)
committerSpencer Oliver <spen@spen-soft.co.uk>
Wed, 2 Nov 2011 09:43:04 +0000 (09:43 +0000)
found by clang.

Change-Id: I50eac219d7540fd48d3285f3f213cb659492d0c0
Signed-off-by: Øyvind Harboe <oyvind.harboe@zylin.com>
Reviewed-on: http://openocd.zylin.com/153
Tested-by: jenkins
Reviewed-by: Spencer Oliver <spen@spen-soft.co.uk>
src/target/cortex_a.c

index 2370d95c95787cf0e318f30f56d453186c5b7acf..8a1ca3b077b1c97a3332ced8b72d64be480ebbd8 100755 (executable)
@@ -1021,6 +1021,8 @@ static int cortex_a8_internal_restore(struct target *target, int current,
     /* called it now before restoring context because it uses cpu
         * register r0 for restoring cp15 control register */
        retval = cortex_a8_restore_cp15_control_reg(target);
+       if (retval != ERROR_OK)
+               return retval;
        retval = cortex_a8_restore_context(target, handle_breakpoints);
        if (retval != ERROR_OK)
                return retval;
@@ -1147,7 +1149,9 @@ static int cortex_a8_resume(struct target *target, int current,
        cortex_a8_internal_restore(target, current, &address, handle_breakpoints, debug_execution);
        if (target->smp)
        {   target->gdb_service->core[0] = -1;
-               retval += cortex_a8_restore_smp(target, handle_breakpoints);
+               retval = cortex_a8_restore_smp(target, handle_breakpoints);
+               if (retval != ERROR_OK)
+                       return retval;
        }
        cortex_a8_internal_restart(target);